От Восхищения Хакера, p. 66, рисунок 5-2
int pop(unsigned x)
{
x = x - ((x >> 1) & 0x55555555);
x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
x = (x + (x >> 4)) & 0x0F0F0F0F;
x = x + (x >> 8);
x = x + (x >> 16);
return x & 0x0000003F;
}
Выполняется в инструкциях ~20-выхода (зависимый дуги), никакое ветвление.
Восхищение Хакера восхитительно! Наиболее рекомендуемый.
Я использовал Eggplant для тестирования приложений Flash и AIR без добавления каких-либо перехватчиков в код. Это отличный инструмент, но он довольно дорогой. Он имитирует реального пользователя с помощью VNC-входа в систему и, помимо прочего, использует распознавание изображений для взаимодействия с приложением.
Мне никогда не приходилось использовать его во Flex, но я недавно наткнулся на некоторая информация о пакетах автоматизации в MS Surface SDK ... изучив его, эти классы автоматизировали поведение пользователя, которое можно использовать для тестирования, т.е. переместите фальшивую мышь в эту точку, выполните это действие. Поскольку вы используете пакеты и классы Flex mx.automation . Я предполагаю (и надеюсь), что с помощью этих классов вы сможете добиться желаемого.
Вы также можете попробовать автоматическое сочетание клавиш - это аналогичная программа для редактирования макросов, но она оказалась очень эффективной, и вы можете писать сценарии и очень легко ее настраивать.
Меня определенно интересует ваш собственный класс Java, и (хотя я не лучший в Java (пока ...)), я был бы готов помочь, если вы думаете
Что касается Flash MouseEvents. К сожалению, на самом деле нет точного способа имитировать перетаскивание во Flash. События MouseEvents, когда они генерируются мышью, обрабатываются совершенно иначе, чем обычные события, и хотя вы можете имитировать действия, передавая события в функции обработки или заставляя диспетчер запускать новое событие DragEvent (DragEvent.DRAG_DROP ..., это будет не то же самое, что взаимодействие пользователя с ним. И для некоторых функций (например, получения доступа к буферу обмена) ничто внутри Flash не достигнет ваших целей.
Честно говоря, вы »