JavaScript onclick событие по объекту флэш-памяти

Это кажется, что Вашим вопросом являются на самом деле два вопроса. Должны Вы использовать исключить базу данных из Вашего тестирования? Когда делают Вас база данных затем, как необходимо генерировать данные в базе данных?

, Когда возможный я предпочитаю использовать фактическую базу данных. Часто запросы (записанный в SQL, HQL, и т.д.) в классах CRUD могут возвратить неожиданные результаты, сталкиваясь с фактической базой данных. Лучше промыть эти проблемы вначале. Часто разработчики будут писать очень тонкие модульные тесты на CRUD; тестирование только самых мягких случаев. Используя фактическую базу данных для Вашего тестирования может протестировать все угловые случаи видов, о которых Вы не могли даже знать.

, Что быть сказанным там может быть другими проблемами. После каждого теста Вы хотите возвратить свою базу данных известному состоянию. Это мое текущее задание мы уничтожаем базу данных путем выполнения всех операторов DROP и затем полностью воссоздания всех таблиц с нуля. Это чрезвычайно медленно на Oracle, но может быть очень быстро, если Вы используете в базе данных памяти как HSQLDB. Когда мы должны спугнуть конкретные вопросы Oracle, мы просто изменяем базу данных URL и свойства драйвера и затем выполнение против Oracle. Если у Вас нет этого вида мобильности базы данных затем, Oracle также имеет некоторую функцию снимка базы данных, которая может быть использована именно с этой целью; откат всей базы данных к некоторому предыдущему состоянию. Я уверен, что имеют другие базы данных.

В зависимости от того, какие данные будут в Вашей базе данных, API или подход загрузки могут работать лучше или хуже. Когда у Вас будут очень структурированные данные со многими отношениями, API сделают Вашу жизнь easer моим созданием отношений между Вашими данными явный. Вам будет более трудно сделать ошибку при создании набора данных тестирования. Как упомянуто другим рефакторингом плакатов инструменты могут заботиться о некоторых изменениях в структуре Ваших данных автоматически. Часто я нахожу, что это полезный для размышления о API генерировало данные тестирования как создание сценария; то, когда пользователь/система сделает шаги X, Y Z и затем протестирует, пойдет оттуда. Эти состояния могут быть достигнуты, потому что можно записать программу, которая называет тот же API, который использовал бы пользователь.

Загружающиеся данные становятся намного более важными при необходимости в больших объемах данных у Вас есть немного отношений между в Ваших данных или существует непротиворечивость в данных, которых нельзя выразить с помощью API или стандартных реляционных механизмов. В одном задании, которое в обработанном в моей команде писало приложение для создания отчетов для системы проверки пакетов большой сети. Объем данных был довольно большим в течение времени. Для инициирования полезного подмножества тестовых сценариев, нам действительно были нужны данные тестирования, сгенерированные снифферами. Таким образом, корреляции между информацией об одном протоколе коррелировали бы с информацией о другом протоколе. Было трудно получить это в API.

базы данных Most имеют инструменты, чтобы импортировать и экспортировать файлы разделенного текста таблиц. Но часто Вы только хотите подмножества их; создание более сложных дампов данных использования. В моем текущем задании мы должны взять некоторые дампы фактических данных, которые сгенерированы программами Matlab и сохранили в базе данных. У нас есть инструмент, который может вывести подмножество данных базы данных и затем сравнить их с "наземной истиной" для тестирования. Кажется, что наши инструменты извлечения постоянно изменяются.

35
задан Pedro 18 September 2009 в 13:30
поделиться

3 ответа

It is best to think of all swf's as having a z-order of infinity. Flash is on top and there is very little which can be done to stop that. On the other hand, if you have access to the code of the SWF itself, or if you can use another swf to load your current swf, you'll be able to use a couple of different Flash commands to address the JavaScript of the page. (ExternalInterface is your best bet).

//This is what your AS code should look like:
import flash.external.ExternalInterface;
import flash.events.MouseEvent;

root.addEventListener( MouseEvent.CLICK, useExternal, true );

function useExternal( event:MouseEvent):void
{
    //swfClickFunction is defined in JavaScript
    ExternalInterface.call( "swfClickFunction" );
}

Another alternative solution using onmousedown instead of onclick is provided by Darwin below.

21
ответ дан 27 November 2019 в 06:28
поделиться

The flash almost certainly doesn't propagate the click event to its parent. Nothing you can do unless you wrote the flash, I suppose.

2
ответ дан 27 November 2019 в 06:28
поделиться

the flash object will always catch the click and not automatically pass it along. you will have to build that functionality - catch onclick in flash and call JS-function.

what are you trying to accomplish?

2
ответ дан 27 November 2019 в 06:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: