Как я могу выполнять автоматизированные тесты для приложений, отличных от JavaScript?
-
03-07-2019 - |
Вопрос
Я пишу элементы управления, которые хорошо работают с JavaScript, но они должны работать и без него.Теперь тестирование с селеном у меня работает нормально.Но все тесты с отключенным JavaScript (в моем браузере) не будут работать с селеном.Есть ли способ провести автоматическое тестирование для этой цели?
Решение
WWW::Механизировать и Тест::WWW::Механизировать это два модуля Perl, которые делают именно это.
use Test::More tests => 5;
use Test::WWW::Mechanize;
my $mech = Test::WWW::Mechanize->new;
# Test you can get http://petdance.com
$mech->get_ok( "http://petdance.com" );
# Test the <BASE> tag
$mech->base_is( 'http://petdance.com/', 'Proper <BASE HREF>' );
# Test the <TITLE>
$mech->title_is( "Invoice Status", "Make sure we're on the invoice page" );
# Test the text of the page contains "Andy Lester"
$mech->content_contains( "Andy Lester", "My name somewhere" );
# Test that all links on the page succeed.
$mech->page_links_ok('Check all links');
Другие советы
Я не знаю Selenium, но с расширением NoScript Firefox вы можете отключить сценарии для каждого домена. Так что вы могли бы использовать это, чтобы разрешить Selenium, но отключить сценарии вашей страницы?
Ознакомьтесь с другими пакетами автоматизации, такими как TestComplete или AutoIt
Если это просто HTML-код без JavaScript, вы можете просто использовать обычные методы скрининга, чтобы сравнить HTML-файл, загруженный с сервера, с тем, что вы ожидаете, не нужно тестировать в браузере.
Вы можете использовать Watir для тестирования вашего веб-приложения.