我正在Angular7上的一个项目中,其中使用量角器编写了e2e
测试。
我在项目中做了一个新功能,希望通过功能开关进行控制。当开关为ON
时,功能将呈现给用户并在开关为OFF
时隐藏。
Switch将是我的app.conf.json
文件中的布尔值。这将在组件的ts
文件中作为标志读取,并且该标志将在具有*ngIf
条件的html中使用。
我的问题是,有没有一种方法可以基于从我的app.conf.json
文件中读取布尔值来执行某些e2e测试。如果值为true,则运行与新功能相关的e2e测试,如果为false,则不运行。我尝试在互联网上搜索此文件,但没有运气。
您可以在'it'规范之外使用if语句,并从json文件中读取条件。例如:
var cnd = require('./test.json');
if(cnd.condition){
it('should do something', () => {
});}
test.json:
[{"condition":"true"}]
您可以将其放在浏览器参数中:
exports.config = {
//...
params: {
myProjectConfig: require('path/to/project/config')
}
}
然后在您的代码中调用它:
const isFeatureOn = browser.params.myProjectConfig.toggleFeature;
if (isFeatureOn) {
//...
}
//...