2017-11-16 10 views
0

Seleniumでは、要素を拡張することができます。これにより、テストのために再利用可能なカスタム要素のセットを持つことが可能になります。Cypress.ioのSelenium拡張要素と同様の再利用可能な要素を作成するには?

たとえば、getTextメソッドを追加できます。

myElement.getText();

この例では、ここでは詳述されています:http://www.vcskicks.com/selenium-extensions.php

Cypress.ioでこの動作を再現する方法はあり、次のように

public static string GetText(this IWebDriver driver) 
{ 
    return driver.FindElement(By.TagName("body")).Text; 
} 

そして、それを再使用?あるいは、データを取得するために同じメソッドを照会して呼び出す必要がありますか?

答えて

2

これは、単純な機能を使用して実行できます。たとえば、いくつかの関数をutils.jsに移動することができます。

export const getByText = (text) => cy.contains(text) 

次に、これらのメソッドをスペックファイルにインポートします。

import { getByText } from './utils' 

it('finds the element',() => { 
    getByText('Jane Lane') 
}) 

あなたは、代わりcustom commandを作成することができますが、best practicesで述べたように、それは時には必要はありません。

1

Custom Commandsはあなたが探しているものだと思います。しかし、サイプレスBest Practicesに注意してください。基本的なコマンドは非常に強力で、多くのコマンドを実行することができます。

関連する問題