gpt4 book ai didi

jquery - 如何编写用 Protractor 单击下拉菜单中的选项的测试?

转载 作者:太空宇宙 更新时间:2023-11-04 14:12:00 25 4
gpt4 key购买 nike

我正在为我的网站登录和注销功能编写一个简单的 Protractor 测试。登录测试运行良好,但我不知道如何编写注销测试,因为在将鼠标悬停在图标上后,注销链接出现在下拉菜单中

<div class="dropdownx">
<a href="#link" class="my-account"><i class="fa fa-user"></i></a>
<div class="dropdownx-content" style="text-align:center; margin-left:-60px; ">
<p><a href="#account">My Account</a></p>
<p><a href="#order_history">Order History</a></p>
<p><a href="#downloads">Downloads</a></p>
<p><a href="#transactions">Transactions</a></p>
<p><a href="#wishlist" id="wishlist-total">Wish List (0)</a></p>
<p><a href="#logout">Logout</a></p>
</div>
</div>

如何访问最后一个 <a>用于注销选项,因为它没有 idclass而且该元素将被隐藏,因为它仅出现在 hover 上.我已经为登录编写了这个测试。

describe('To test mdpocket login window', function(){
it('should be able to login', function() {
browser.driver
browser.driver.get('login_page_link');
browser.driver.findElement(by.css('#input-email')).sendKeys("email@gmail.com");
browser.driver.findElement(by.css('#input-password')).sendKeys("some_password_here");
var login = browser.driver.findElement(by.css('#button-login'))
login.click();
})
});

所以基本上我的问题是如何获得没有 id ,没有类的隐藏元素。我已经搜索但到目前为止找不到任何解决方案。请帮忙!

更新:我已经尝试过这个注销,但它给出了这个错误 Process exited with error code 1

var dropDown = browser.driver.findElement(by.css('.dropdownx'));
browser.actions().mouseMove(dropDown).perform();
browser.driver.findElement(By.xpath("//a[text() = 'Logout']")).click();

我的解决方案:

var dropDown = browser.driver.findElement(by.css('.my-account'))
browser.actions().mouseMove(dropDown).perform();
browser.driver.findElement(By.xpath("//a[text() = 'Logout']")).click();

这东西对我有用!

最佳答案

首先,您需要移动鼠标光标并保持下拉元素。因此所有下拉菜单选项都可见。现在将光标移动到注销链接并单击。您可以按照以下代码:

代码片段

 var EC=protractor.ExpectedConditions;
var dropDown=element(by.css(".dropdownx"));
var logoutLink=element(by.css('a[href="#logout"]'));

browser.actions().mouseMove(dropDown).perform().then(function(){
browser.wait(EC.visibilityOf(dropDown),8000,'Logout Link is not visible');
browser.actions().mouseMove(logoutLink).click().perform();
});

仅供引用:如果上述定位器未能找到元素,请更新下拉和注销链接定位器

关于jquery - 如何编写用 Protractor 单击下拉菜单中的选项的测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40477422/

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