問題タブ [xctestexpectation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2270 参照

ios - XCTest: 関数パラメーターを渡す

XCTest ファイルから、Web サービス呼び出しを呼び出して、「self.waitForExpectationsWithTimeout」API を使用して待機ブロックを配置し、サービス応答を取得しました。

このサービス応答で実行するテスト メソッドはほとんどありません。この応答をグローバル変数に保存し、他のテスト関数からアクセスすると、この変数は nil になります。ここで何をする必要がありますか?関数のパラメータとして渡すことはできますか?

ありがとう

0 投票する
1 に答える
4042 参照

ios - XCTAssert ブレーク関数

ロジックが失敗した場合に単体テストの実行を停止する方法。以下に例を示します。XCTAssertEqual("Hello", "Hi", "Passed")条件が失敗したときに実行を停止する方法。

0 投票する
1 に答える
2031 参照

ios - XCTest とモック オブジェクトを通知レシーバーとして使用する

Swift を使用した XCTest では、必要なテスト関数でモック オブジェクトを定義できます。

これらのモック オブジェクトを使用して、別の関数が特定の条件で正しい通知を送信することをテストしようとしています (私の場合、成功通知は 204 ステータス コードでオブジェクトにブロードキャストされます。

私が抱えている問題は、deletedSuccess()関数が明らかにそこにあるにもかかわらず、「認識されないセレクター」ランタイムエラーが発生することです/

Heresいくつかのコードダンプ

このようなモック オブジェクトとセレクターを使用する際に、私が知らない何らかの問題がありますか?

0 投票する
1 に答える
740 参照

objective-c - XCTests で複数の非同期操作を管理する

XCTestCase オブジェクトの非同期操作に関する問題に直面しています。のチェーンから始めexpectation-waitForExpectation、非同期操作の完了ブロックによって満たされるように、予期されるインスタンスをメソッド パラメーターとして渡すこともありました。以前のように書かれた悪いコードを見ることができず、この方法で試したので、今私は方法を変更しました:

__waitForLoadingAppAndDo:として実装された方法で

そして、他の__方法はそれに似ています。明らかに、testThatメソッドはメソッド完了ハンドラーを待機していません。どうすれば改善できますか? また、testThatメソッドを完了まで待機させるにはどうすればよいですか? XCTestExpectation道は?(言わないでね)

追加:それで、それはユニークな方法ですか?

ADDING-2 :

で試しました

ただし、グループは完了ブロックを待たずに非同期で呼び出されます。例: OP1が最初に開始され、OP1完了ブロックでOP2が開始されることを期待しています。

ADDING-3 : で別のアプローチを使用しましたdispatch_semaphore。気に入っていますが、交換したいものがあります。シグナルを待つ場合、メインスレッドをブロックしているためdispatch_async、次のwaitコマンドを実行する必要があります。

これを回避する方法はありますか?

0 投票する
0 に答える
1220 参照

ios - iOS 非同期メソッドのパフォーマンスのテスト

API リクエスト メソッドのパフォーマンス テストを作成しようとしています。measureBlock なしで実行すると問題なく動作しますが、パフォーマンス テストとして使用すると次のエラー メッセージが表示されます。

*** -[Performance waitForExpectationsWithTimeout:handler:]、/SourceCache/XCTest_Sim/XCTest-7701/XCTestFramework/Classes/XCTestCase+AsynchronousTesting.m:236 /Users/iphonetest03/Desktop/shootr-ios/Tests/Performance でのアサーションの失敗。 m:42: エラー: -[Performance testPerformanceExample]: 失敗しました: 「NSInternalInconsistencyException」をキャッチしました。

どんな提案でも大歓迎です。ありがとう。これが私のコードです:

0 投票する
0 に答える
544 参照

ios - XCTest: iOS の XCTestExpectations でクラッシュする

単体テスト スクリプトを実行すると、「ServiceTest」クラスの「waitForExpectationWithTimeout」でクラッシュします。

この「ServiceTest」クラスのテスト スクリプトを単独で実行すると、クラッシュすることなく正常に動作します。しかし、プロジェクト全体のテスト スクリプトを実行すると、このクラッシュが発生します。このクラッシュの理由と意味については、私にはわかりません。どんな助けにも感謝します。ありがとう。

ここに画像の説明を入力

0 投票する
1 に答える
1427 参照

ios - IOS:dispatch_async を使用した単体テストが実行されていません

以下のコードに似たスクリプトを作成しました。「dispatch_async」内にブレークポイントを保持しましたが、実行されません。ここで何が問題になる可能性がありますか?

0 投票する
1 に答える
1378 参照

ios - ExpectationForNotification の使用方法

私はすべてを試しましたが、テストを成功させる唯一の方法は、テスト関数で実際に通知を送信することであり、これは目的に反しています。

ボタンがあります。ボタンをタップすると、通知が送信されます。この通知が送信されるかどうかを確認するには、expectationForNotification を使用するにはどうすればよいですか?