0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【iOS】UITestの自動テストにて、フォームの自動入力が急にできなくなる問題の修正

Last updated at Posted at 2024-06-04

状況

テストコードを実行してシミュレーターが起動し、登録画面のフォームを自動で入力するような動作をするが、他の開発者の環境だと動作するのに自分の環境だと動作しなかった。
つまり、Storyboard上のテキストフィールドやボタンなどに設定しているidは間違っていない。
しかし、なぜか途中で入力が中断されテストが終了されてしまい、テストNGとなってしまう

調査

いろいろググったら、tapと入力の間にsleepを挟まないとうまくいかないと書いている記事や、XCUIApplication()を代入している変数はテストのたびに代入してと書いてる記事はあったが、ググった情報では解決に至らなかった。

このように書いてある記事を見かけ、やはり配置が問題に関わっているかもと思った。
image.png
でも他の人の環境で動いているから、UIの位置を変更するのはちょっとなぁ、、、という感じだった。

解決方法

シミュレーターでの自動入力の動作をよくみたら、入力のたびにキーボードが閉じられるが、途中からキーボードが閉じれていなくてそこから数秒後にシミュレーターが強制終了となってしまっていた。
シミュレーターの機種のサイズとかによって自動操作が意図しない感じになる??でもUIのidを指定して入力とかタップしているわけだからプログラム的には関係ないはずだが、、、

でもまあとりあえずキーボードがちゃんと閉じれれば解決する??と思ってテストコードにおけるキーボードの閉じ方を調べたら、
入力の最後に改行を入力したら良いのだと知った

そして、入力の最後に改行も入力するよう追加したら、、、、解決!!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?