По мотивам - GUI-тестирование "по-русски". Back to the basics. Пример нажатия на кнопку формы из скрипта:
"P.P.P.S. Есть ещё одна "хотелка" - нарисовать GUITestRunner для DUnit для проектов на базе FM. Я постараюсь её реализовать."
Вот ссылка на исходники:
https://bitbucket.org/ingword/mindstream/src/a2c4db4a11bc325909e64e258693ae17668cf64e/FMX.DUnit/?at=MS-4_Dunit_for_Firemonkey
Там правда ещё "работать и работать".
В частности GUIObject - это - "ужас ужас".
Да и вообще надо делать декоратор над ITest.
Но - "как-то" - работает. И вполне себе - работает.
Скриншот:
Код проекта:
Компилированное "тестовое приложение" - FMX.DUnit.exe.
"P.P.P.S. Есть ещё одна "хотелка" - нарисовать GUITestRunner для DUnit для проектов на базе FM. Я постараюсь её реализовать."
Вот ссылка на исходники:
https://bitbucket.org/ingword/mindstream/src/a2c4db4a11bc325909e64e258693ae17668cf64e/FMX.DUnit/?at=MS-4_Dunit_for_Firemonkey
Там правда ещё "работать и работать".
В частности GUIObject - это - "ужас ужас".
Да и вообще надо делать декоратор над ITest.
Но - "как-то" - работает. И вполне себе - работает.
Скриншот:
Код проекта:
program FMX.DUnit; uses FMX.Forms, u_fmGUITestRunner in 'u_fmGUITestRunner.pas' {fmGUITestRunner}, u_FirstTest in 'u_FirstTest.pas', u_SecondTest in 'u_SecondTest.pas'; {$R *.res} begin Application.Initialize; u_fmGUITestRunner.RunRegisteredTestsModeless; Application.Run; end.
Компилированное "тестовое приложение" - FMX.DUnit.exe.
Это стоит оформить на английском и люди потянутся :)
ОтветитьУдалить;-) мы думали об этом
УдалитьЕсть такой момент. Поскольку мы делимся исходниками (пусть и "копеечными" пока), но не хотим отказываться от своих прав, то надо положить какую-то "лицензию". Как думаешь какую? GPL? Учитывая, что в "коммерческий код" тесты всё равно - никогда не попадут.
УдалитьЕсли "дело пойдёт", то есть "куда развивать" - http://18delphi.blogspot.ru/2013/03/dunit.html
Удалить