我是新的量角器,现在我将browser.get(URL)放在第一个'it'语句中,然后我的afterEach
语句让浏览器返回主页。
我想知道是否有更好的地方放置browser.get语句以使我的测试更多模块?我尝试将它放在beforeEach语句中,但我不想为我正在运行的每个测试打开一个新的浏览器。是否有更好的地方放置这些先决条件?
欢迎初学者的任何其他提示。
答案 0 :(得分:1)
如果您只想为套件中的所有测试拨打#!/usr/bin/perl
use strict;
use warnings;
use Cwd qw( abs_path );
use File::Basename;
use File::Basename qw( dirname );
my $file_in = dirname(abs_path($0))."/practicecase.txt";
my $file_out = dirname(abs_path($0))."/extracted.txt";
open my $in, "<$file_in" or die "$!";
open my $out, ">$file_out" or die "$!";
print "Extracting inputs\n";
while ( <$in> ) {
print $out "$1\n" if / ^ (?:first|second)_word\s+(.+?)$ /x;
}
close($in);
close($out);
exit;
一次,请使用beforeAll()
:
browser.get()
函数在所有规范之前只调用一次 描述是运行的,并且在所有规范之后调用beforeAll
函数 完。这些功能可用于加速测试套件 昂贵的设置和拆解。
afterAll
describe('My page', function() {
beforeAll(function() {
browser.get('/the/url');
});
it('test 1', function() {
// ...
});
it('test 2', function() {
// ...
});
});
内置于jasmine2。对于jasmine1,有一个第三方jasmine-beforeAll
包提供相同的功能。
答案 1 :(得分:0)
您希望以beforeEach方式粘贴browser.get()
来电:
describe('My page', function() {
beforeEach(function() {
browser.get('/the/url');
});
it('should load', function() {
// Some verification logic
});
});
&#13;