問題タブ [xctestcase]

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 投票する
2 に答える
192 参照

ios - Swift (iOS) コード カバレッジと XCTest (モック)

上記のクラスがあり、このクラスの XCTestCase を作成し、すべてのコード カバレッジを作成する必要があります。XCTestCase では、viewDidLoad()、close()、および setNavBar() 関数を呼び出す必要があります。これを正しく行うにはどうすればよいですか?

swift で私のクラスにモック フレームワークを使用することは可能ですか? どうすればこれを行うことができますか?

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

swift - ヘルパー メソッドから呼び出される XCTestCase 拡張機能は、メイン テスト ケースに設定されたプロパティをどのように知ることができますか?

バックグラウンド

次のテストは、XCTestCase の拡張であるメソッドを呼び出します。目標:

  • waitForElementExists要素が存在するか、または
  • waitForElementExists要素が指定された時間内に存在しなかったため、メソッドはそれを呼び出したテスト ケース/setUp メソッドに失敗しました

メソッドを待機する UI オートメーション XCTestCase 拡張機能:

waitForExpectationsWithTimeout が正しく機能する例

テストケース

これはうまくいきます!testSample呼び出されることはありません。

しかし、waitForElementExists 呼び出しをヘルパー メソッドに移動するとどうなるでしょうか。

waitForExpectationsWithTimeout が正常に返されるが、返すべきではない例

ここでは、アサーションが発生しなかったかのようにテスト ケースが続行されます。にブレークポイントを配置すると、それが true に設定されていることがwaitForElementExistsわかりcontinueAfterFailureます。したがって、メインのテスト ケースと同じコードに接続されていないことは明らかです。

テストケース

ヘルパー ファイル

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

swift - UITableViewCell の単体テスト方法

プロジェクトの単体テストを追加していますが、UITableViewCell カスタム クラスのテストを作成する方法につまずいています。クラスのコードは次のとおりです。

たとえば、awakeFromNib() と setSelected をテストするにはどうすればよいでしょうか?

ありがとうございました。

0 投票する
2 に答える
2855 参照

ios - アプリをバックグラウンドに送信し、XCTest の最近のものから再起動する

アプリをバックグラウンドに送信し、特定の時間間隔の後に最近のものから再起動する必要があるという問題の解決策を探していました。これを Instruments UIAutomation で実現するために、deactivateAppForDuration() が使用されました。XCTestでそれを達成する方法を知っている人はいますか?

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

ios - 非同期の迅速な単体テストが1回ではなく3回呼び出される

http リクエストを介してデータをロードする非同期関数の単体テストを作成しました。

テストを開始すると、1 回ではなく 3 回呼び出されます。

ここのような単体テストを実装しようとしました: https://adoptioncurve.net/archives/2015/10/testing-asynchronous-code-in-swift/

私のコードは次のようになります。

その結果、次のようになります。

それで、私は何か間違ったことをしていますか、それとも iOS での非同期単体テストのデフォルトの動作ですか?

0 投票する
2 に答える
1310 参照

xcode - テスト中に障害ログをキャプチャする方法: XCTest?

XCTestでの作業。テスト中、testresultsはパスの TestSummaries.plist に保存されます:

/Users/smriti/Library/Developer/Xcode/DerivedData/Project_name/Logs/Test/

上記のパスから TestSummaries.plist ファイルの内容を読み取る方法を誰か教えてもらえますか?

上記のファイルから結果データ (エラー メッセージ、テスト ケース、行番号) を取得し、関数teaDown()で Excel に書き込む必要があります。

使ってみた

  1. NSSearchPathForDirectoriesInDomains(.AllLibrariesDirectory, .AllDomainsMask, true) -> 目的のパスを指定しません。

  2. NSBundle.mainBundle は、「/Project_name/Logs/Test/」ではなく「Project_name/Build/Products/」のパスを提供します