Webdriverio 元素需要是字符串类型?
Webdriverio element needs to be type of string?
Webdriverio 元素需要是字符串类型?
我的代码如下:
describe('Test Contact Us form WebdriverUni', function() {
it.only('Should be able to submit a successful submission via contact us form', function(done) {
browser.pause(5000);
var firstNameTextField = $("[name='first_name']");
var firstNameTextField = "[name='last_name']";
browser.setValue(firstNameTextField, 'Joe');
使用以下代码:var 和 $,我似乎收到以下异常:'element needs to be type of String'.
以下也因同样的异常而失败:
var firstNameTextField = browser.element("[name='last_name']");
但是下面的方法有效:
browser.setValue("[name='first_name']", 'Joe');
有什么想法吗?
你看,webdriver setValue 采用了一个必须为 String 类型的选择器。
当您使用这段代码时:var firstNameTextField = $("[name='first_name']");
您得到的是一个对象,而不是字符串。
然而,当您这样称呼它时:browser.setValue("[name='first_name']", 'Joe');
您提供了一个字符串类型的选择器。并且有效。
所以,您可能应该将变量更改为 var firstNameTextField = "[name='first_name']";
编辑:
我还注意到您在这里两次使用了相同的变量名:
var firstNameTextField = $("[name='first_name']");
var firstNameTextField = "[name='last_name']";
第二个不应该是 lastNameTextField 吗?
Webdriverio 元素需要是字符串类型?
我的代码如下:
describe('Test Contact Us form WebdriverUni', function() {
it.only('Should be able to submit a successful submission via contact us form', function(done) {
browser.pause(5000);
var firstNameTextField = $("[name='first_name']");
var firstNameTextField = "[name='last_name']";
browser.setValue(firstNameTextField, 'Joe');
使用以下代码:var 和 $,我似乎收到以下异常:'element needs to be type of String'.
以下也因同样的异常而失败:
var firstNameTextField = browser.element("[name='last_name']");
但是下面的方法有效:
browser.setValue("[name='first_name']", 'Joe');
有什么想法吗?
你看,webdriver setValue 采用了一个必须为 String 类型的选择器。
当您使用这段代码时:var firstNameTextField = $("[name='first_name']");
您得到的是一个对象,而不是字符串。
然而,当您这样称呼它时:browser.setValue("[name='first_name']", 'Joe');
您提供了一个字符串类型的选择器。并且有效。
所以,您可能应该将变量更改为 var firstNameTextField = "[name='first_name']";
编辑:
我还注意到您在这里两次使用了相同的变量名:
var firstNameTextField = $("[name='first_name']");
var firstNameTextField = "[name='last_name']";
第二个不应该是 lastNameTextField 吗?