207 похожих чатов

Можно ли подключиться к уже запущенному приложению и прогонять тесты? Для

отладки и выяснения причин падения есть необходимость начинать выполнять шаги с определенного места, можно ли так делать?
Десктоп, c#

13 ответов

9 просмотров

Да, да. Но есть много НО. Зависит от фреймворка тестирования, как у вас там работа с тестовыми данными организована и т.п.

Valentin Marchuk- Автор вопроса
unixshaman
Да, да. Но есть много НО. Зависит от фреймворка т...

А что для этого нужно не очень понимаю? Передать WindowsDriver'у id процесса или что?

unixshaman
Да, да. Но есть много НО. Зависит от фреймворка т...

А можете подробнее описать как подключиться к работающему процессу и затем прогнать в нём тесты?

Keane
А можете подробнее описать как подключиться к рабо...

Возможно я чего-то не знаю, но если это десктоп приложение, там ведь ищется просто поиском по компоненту? И там не важно, когда запущено приложение, до/после...

Keane
А можете подробнее описать как подключиться к рабо...

UiAutomation называется, то, чем я пользовался

unixshaman
UiAutomation называется, то, чем я пользовался

Теперь я понял о чём вы говорите. Мне кажется у @Valuamba вопрос был немного в другом.

Я боюсь, что набор тестов в уже запущенном приложении прогнать не получится. В обычной ситуации подобное не требуется. Опишите, пожалуйста, с какой именно проблемой вы столкнулись.

Valentin Marchuk- Автор вопроса
Keane
Я боюсь, что набор тестов в уже запущенном приложе...

После обновления разработчиками формы, в середине длинного сценария начали тесты падать, но чтобы понять что там падает необходимо визуально увидеть эту ситуацию несколько раз. И я подумал, что было бы не плохо закомментировать предыдущие шаги, захардкодить какие-то данные и вручную открыть в приложении с чего требуется начать, чтобы тест не заупускал заново приложение. Причина этому, что формы долго данные из бд подгружают и приходится ждать от 5 - 7 минут, чтобы увидеть падение, не удобно.

Keane
Теперь я понял о чём вы говорите. Мне кажется у @V...

А я понял, о чем вы говорите. Короче, особенности драйвера. https://github.com/microsoft/WinAppDriver/blob/master/Samples/C%23/StickyNotesTest/ScenarioPen.cs Вот тут посмотрите. var newStickyNoteWindowHandle = openedStickyNotes[0].GetAttribute("NativeWindowHandle"); newStickyNoteWindowHandle = (int.Parse(newStickyNoteWindowHandle)).ToString("x"); // Convert to Hex DesiredCapabilities appCapabilities = new DesiredCapabilities(); Вот этот кусок кода гляньте, там указывается Hex код окна. И можно спокойно дальше продолжить автоматизировать. Т.е. надо написать красивую логику, что если указана какая-нибудь опция, типо debug, то если нет запущенного приложения, то запустить его, а если есть запущенное приложение, в единственном экземпляре, то получить его код окна и прицепится к нему.

Valentin Marchuk
После обновления разработчиками формы, в середине ...

Если я правильно понимаю ситуацию, то вариантов кроме как модифицировать тесты так, чтобы быстрее добираться до этого случая, у вас нет.

Valentin Marchuk- Автор вопроса
Keane
Если я правильно понимаю ситуацию, то вариантов кр...

Нет, такого нет способа, функциональность.

https://github.com/Microsoft/WinAppDriver/issues/534 -- вот тут есть вариант, как это с помощью WinAppDriver сделать

Можно и то, и то, но смотря что используется в качестве framework

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта