这似乎有效,但有任何理由我不应该这样做吗?它为我节省了一行代码,让我设置一个变量和一个文本区域的值.
$('#price').val(default_price = 2.9);
Run Code Online (Sandbox Code Playgroud)
它相当于:
default_price = 2.9;
$('#price').val(default_price);
Run Code Online (Sandbox Code Playgroud) 我有一个单击按钮并重定向到用户仪表板的测试.发生这种情况时,Webdriver返回:
javascript error: document unloaded while waiting for result.
为了解决这个问题,我browser.sleep(2000)在重定向发生时插入并假设我的CPU使用率很低,这就解决了这个问题.但是,2000毫秒是任意而缓慢的.是否会有类似的东西browser.waitForAngular()等待角度加载到重定向页面之前expect(..)?
it('should create a new user', () => {
$signUp.click();
$email.sendKeys((new Date().getTime()) + '@.com');
$password.sendKeys('12345');
$submit.click();
browser.sleep(2000); // Need alternative to sleep...
// This doesn't do it...
// browser.sleep(1);
// browser.waitForAngular();
$body.evaluate('user')
.then((user) => {
expect(user).toBe(true);
});
});Run Code Online (Sandbox Code Playgroud)
selenium unit-testing angularjs selenium-webdriver protractor
new Proxy(function() {}, {})
Run Code Online (Sandbox Code Playgroud)
创建代理以观看功能在Chrome上无效.相反,它会抛出一个错误:
Uncaught illegal access
Run Code Online (Sandbox Code Playgroud)
我想观看一个函数,并在访问其属性时创建代理处理程序.在Firefox中看起来很好.有办法解决这个问题吗?
我想在不修改原始数组的情况下创建一个新的数组方法。
my_array.push('foo') //modifies my_array
my_array.slice(2) //returns a new array without modifying my_array
Run Code Online (Sandbox Code Playgroud)
我想创建一个新的 Array.prototype 方法,该方法返回一个数组而不修改它被调用的数组。所以这是可能的:
//[define new method here] Array.prototype.add_foo = function() {...
var my_array = ['poo'];
my_array.add_foo(); //would return ['poo', 'foo'];
my_array; //would return ['poo'];
Run Code Online (Sandbox Code Playgroud) javascript ×3
angularjs ×1
arrays ×1
coding-style ×1
ecmascript-6 ×1
jquery ×1
protractor ×1
proxies ×1
selenium ×1
unit-testing ×1
v8 ×1