英文:
Assert empty textbox in testcafe
问题
我正在验证文本框是否为空。我不确定我在这里做错了什么。
页面对象方法
async getTextVal(){
await this.t.selectText(this.editor) //选择文本框
return this.editor.innerText; //获取文本框中的值
}
测试用例
await t.expect(element.getTextVal()).eql(''); //断言语句
如果存在值,getTextVal 就能正常工作。但是在检查空值时,它会失败。
英文:
I am validating if the text box is empty or not. I am not sure what am I doing wrong here.
Page Object method
async getTextVal(){
await this.t.selectText(this.editor) //selecting the text box
return this.editor.innerText; //fetching the value in the textbox
}
TestCase
await t.expect(element.getTextVal()).eql(''); //assert statement
the getTextVal works fine if there is a value present. But checking empty value it fails
答案1
得分: 0
尝试
Page Object 方法
async getTextVal(){
await this.t.selectText(this.editor) // 选择文本框
return await this.editor.innerText; // 获取文本框中的值
}
测试用例
await t.expect(await element.getTextVal()).eql(''); // 断言语句
英文:
try
Page Object method
async getTextVal(){
await this.t.selectText(this.editor) //selecting the text box
return await this.editor.innerText; //fetching the value in the textbox
}
TestCase
await t.expect(await element.getTextVal()).eql(''); //assert statement
答案2
得分: 0
另外,如果没有方法,只有一个选择器,可以像这样完成:
await t.expect(selector.innerText).eql('');
您还可以在页面对象文件中设置您的选择器:
import { Selector, t } from "testcafe";
class PageObjectFile {
constructor() {
// 输入字段,可以是许多不同样式的选择器/框架
this.inputField = Selector('.class-input-element');
this.inputFieldTwo = Selector('#id-input-element');
}
}
export default PageObjectFile;
并且您的测试文件如下所示:
import PageObjectFile from "/PageObjectFile";
let pageObjectFile = new PageObjectFile();
fixture `测试输入字段是否为空`
.page(`https://examplepage.com`)
test(`用户看到空的输入字段`, async t => {
await t.expect(pageObjectFile.inputField.innerText).eql('');
});
英文:
Also, without a method just a selector this can be done like so:
await t.expect(selector.innerText).eql('');
You can also setup your selector in a page object file:
import { Selector, t } from "testcafe";
class PageObjectFile {
constructor() {
// input field, this could be many different styles of selectors / frameworks
this.inputField = Selector('.class-input-element');
this.inputFieldTwo = Selector('#id-input-element');
}
}
export default PageObjectFile;
And your test file like this:
import PageObjectFile from "/PageObjectFile";
let pageObjectFile = new PageObjectFile();
fixture `Tests input field is empty`
.page(`https://examplepage.com`)
test(`User see's an empty input field`, async t => {
await t.expect(pageObjectFile.inputField.innerText).eql('');
});
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论