gpt4 book ai didi

protractor - e2e Protractor 测试应该有多深?

转载 作者:行者123 更新时间:2023-12-02 03:33:06 24 4
gpt4 key购买 nike

我正在为登录页面编写 e2e 测试,我意识到我不知道我的测试应该有多深。我澄清一下:一个主要测试必须是真实登录,显然,另一个测试将是虚假登录。另一个测试可以检查登录页面上的现有链接是否有效。但是,我应该测试显示所有页面的元素吗?例如:编写一个测试来检查一个 div 和其中的元素是否显示:

it('It should be displayed a Elke Winter div', function(){

var elkeDiv = angularPage.elkeDiv;
expect(elkeDiv.isDisplayed()).toBe(true);

var title = angularPage.titleElke;
var img = angularPage.imgElke;
var content = angularPage.contentElke;
var telephoneDt = angularPage.telDt;
var telephoneDd = angularPage.telDd;
var faxDt = angularPage.faxDt;
var faxDd = angularPage.faxDd;

expect(title.isDisplayed()).toBe(true);
expect(img.isDisplayed()).toBe(true);
expect(content.isDisplayed()).toBe(true);
expect(telephoneDt.isDisplayed()).toBe(true);
expect(telephoneDd.isDisplayed()).toBe(true);
expect(faxDt.isDisplayed()).toBe(true);
expect(faxDd.isDisplayed()).toBe(true);
});

你怎么看?谢谢

最佳答案

我只测试对用户体验至关重要的页面内容,例如

  • 按钮
  • 指示正在发生的事情的短信
  • 链接
  • 输入
  • 菜单

永远不要测试 html 特定的东西,比如 div,而是总是使用语义选择器,比如 html id 或类,或者通过内容找到它们,例如

  • by.cssContainingText('#linkOne', '点击此处')
  • by.buttonText('发送邮件')

如果你找到一个你想要定位的 div 元素但没有 html id 也没有 html class 然后尽可能自己添加它,我使用前缀 e2e-e2e-linkOne 让开发人员知道选择器是为了测试而识别的。然后,您定位元素 $('.e2e-linkOne') 而不是标记名和/或位置 $$('div').get(2).

关于protractor - e2e Protractor 测试应该有多深?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25482404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com