私はウェブサイトのログインとログアウトの機能のための簡単な分度器テストを書いています。ログインテストはうまく実行されているが、ログアウトリンクは、私が最後<a>
にアクセスするにはどうすればよいのアイコン分度器でドロップダウンメニューのオプションをクリックするためのテストを書くには?
<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>
にホバリングした後、ドロップダウンメニューに表示されるように私は、ログアウトのためのテストを書く方法を知らない ログアウトオプションの場合はid
またはclass
であり、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 protected]");
browser.driver.findElement(by.css('#input-password')).sendKeys("some_password_here");
var login = browser.driver.findElement(by.css('#button-login'))
login.click();
})
});
ですから、基本的に私の質問はどのように私はid、クラスなしで隠し要素を取得できますか?私は検索しましたが、今のところ解決策は見つかりませんでした。助けてください !
UPDATE: 私は、ログアウトのためにこれを試してみましたが、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();
を!
"まず、マウスカーソルを移動して要素を下に押し続ける必要があります。" このオートマトン私のテストとtically? – Haroon
var dropDown = browser.driver.findElement(by.css( '。my-account')) \t browser.actions()。mouseMove(dropDown).perform(); \t browser.driver.findElement(By.xpath( "// a [text()= 'ログアウト']"))。 このことは私のために働いた – Haroon