使用测试用例(“ it”块)的组合创建了一个规范文件,其定义如下:
spec1.js
describe('suite', function(){
it('test case1', function()
{
//test case definition
})
it('test case2', function()
{
//test case definition
})
})
conf.js设置如下。
suites: {
suite1: [
path.resolve(filePath.specFile1),
path.resolve(filePath.specFile2),
path.resolve(filePath.specFile3)
]
suite2:
[
path.resolve(filePath.specFile1),
path.resolve(filePath.specFile3)
]
}
在package.json中触发的命令为
"suite1test": "protractor ./conf.js --suite suite1",
"allTest" : "protractor ./conf.js"
在命令行中,我们可以将suite1触发为“ npm run suite1test
”
但是我的要求是,我只想从spec1.js中执行'test case1''it'块,就像从spec文件中的特定测试用例一样,并建立一个作为测试套件的组。
当我寻找解决方案时,我知道我们可以通过在'x'前面加上一些测试用例或套件来禁用它,即'xdescribe'禁用该套件,而'xit'将禁用特定的'it'块
如果要执行特定的测试套件或测试用例,那么我们可以将焦点放在“ f”之前,即,“ fdescribe”将执行该套件,而“ fit”将执行该特定的“ it”块。
如果要每次都创建一组单独的要执行的测试套件或测试用例,这是一个漫长的过程,我们需要在每个spec文件级别上进行更改。与其相反,要通过创建指向特定“ it”块的单独套件从conf.js触发并在需要时触发。
有什么解决办法吗?
答案 0 :(得分:1)
您需要单独的规范文件,然后可以从conf.js在规范中调用它们。 始终添加x或f并对其进行更改不是一个好习惯。