5

私は次のものを持っています:

    [TestFixture]
    public class SmokeTest : BaseTest
    {
        [Test(Description = "Should Do This")]
        public void ShouldDoThis()
        {
            //Tests,Assertions,etc
        }

        [Test(Description = "Should Do That")]
        public void ShouldDoThat()
        {
            //Tests,Assertions,etc
        }

    }

BaseTest を次のように定義します。

   [TestFixture]
   public class BaseTest
   {
    [TestFixtureSetUp]
    public void SetUp()
    {
        // set up browsers
    }
    [TearDown]
    public void Dispose()
    {
        // dispose browsers
    }
   }

目標は、selenium ブラウザーのドライバーを testFixture (// ブラウザーのセットアップ) ごとに 1 回作成し、Fixture の最後で破棄することです。ただし、現在、ブラウザは最初のテストの後に強制終了されており、2 番目のテストは「リモート サーバーに接続できません」というエラーで失敗します。

ここで最初の問題を取り上げたいと思います。最初のテストの後に TearDown メソッドが呼び出されるのはなぜですか?

4

1 に答える 1

6

基本テストでは、TestFixtureTearDown属性の代わりに属性を使用する必要があります。TearDownこのTestFixtureTearDown属性により、メソッドはフィクスチャ内のすべてのテストの最後に1 回だけ実行されます。

于 2013-10-08T21:32:59.763 に答える