静的ライブラリを iOS プロジェクトに埋め込むときにMonkeyTalkが何をしているのか疑問に思っています。自動化された UI テストを記録しようとしたところ、アプリで望ましくない動作が見つかりました。
MonkeyTalk が自動的に認識しないため、アクセシビリティ ラベルをカスタム UI コンポーネントに追加する必要がありました。そうするとき、アクセシビリティ ラベルを追加していないときにnil
a を決してとらない変数に aを取得します。nil
アクセシビリティ ラベルの割り当てを変更すると、UI コンポーネントのいくつかの初期化 (標準の Obj-C 2.0 プロパティを介して合成された ivar) の後にいくつかの行で機能します...
これは期待どおりに実行されません (から ivar を取得するときに nil を取得する_groupViewController
):
_groupViewController = [[GroupsViewController alloc] init];
[_groupViewController.view setAccessibilityLabel:kAL_Slider];
// Set _groupViewController ivars through non-custom properties
これは次のことを行います。
_groupViewController = [[GroupsViewController alloc] init];
// Set _groupViewController ivars through non-custom properties
[_groupViewController.view setAccessibilityLabel:kAL_Slider];
私の質問は、ライブラリは内部で何をしているのですか? 実行時に何らかの種類のオブジェクト内部を変更しますか?