1

Serenity、Selenium、jUnit を使用するテスト フレームワークに取り組んでいます。ユーザー認証に依存するいくつかのテストがあります。基本的に、テストごとにすべてのログイン手順を繰り返す必要があります。これらのステップを @Before メソッドに移動したかったのですが、@Test として注釈が付けられていないメソッドでステップが初期化されていないようです...以下のコード スニペットを参照してください。AuthSteps インスタンスが初期化されていません。

私のオプションはどれですか?

@RunWith(SerenityRunner.class)
public class MyTests extends AbstractTest {
@Managed(driver = "firefox", uniqueSession = false)
@Steps
AuthSteps auth;

@Before
public void authSetup() {
 if (!authenticated){
  auth.login();
  //a lot of other things
 }
}

@Test
public void mytest(){
 //do test related stuff
}
4

1 に答える 1

1

彼らはそうします。ステップは、@BeforeClass、@Before、@Test などで実行されます。あなたのステートメントがあなたのステップif (!authenticated)の実行を除外しているようです。auth.login()

あなたの問題を明確に調べるのに十分なコードがここに提供されているわけではありませんがboolean authenticated、この回答がお役に立てば幸いです。

于 2016-08-03T08:16:24.737 に答える