LoginSignup
1
0

More than 5 years have passed since last update.

Cordovaでテストをする方法サーベイ

Last updated at Posted at 2019-04-04

やりたいこと

  • Cordovaで作られたiOSアプリ、Androidアプリと、それとコードを共有するウェブアプリ(Cordova管理外)を、メンテコストの低い形でUIテストする

前提

  • webview内のコードはウェブアプリ(cordova管理外)と共有している
  • webview内のコードはコードはプラットフォームごとの細かい分岐や、cordovaプラグインの呼び出しが含まれる
  • UIはプラットフォームごとに少しずつ異なる。

方針

cordovaのwebview内の要素にアクセスできるようなselenium driverがあれば、ウェブアプリとテストコードを共有できて楽そう。

-> 多分このリポジトリで可能。androidの例のみ
https://github.com/asialgearoid/cordova-appium-example

疑問

appiumでcordovaのwebviewのdomにアクセスできるのか?

それができることを匂わせる記事
https://docs.microsoft.com/en-us/visualstudio/cross-platform/tools-for-cordova/debug-test/appium-ui-sequences?view=toolsforcordova-2017

それができることを匂わせるリポジトリ
https://github.com/asialgearoid/cordova-appium-example/blob/master/tests/spec/button.js

それができないことを匂わせる記事
https://www.ninton.co.jp/?p=1673

これじゃね?
https://github.com/asialgearoid/cordova-appium-example/blob/master/tests/wdio.conf.js#L27
これから推測すると、設定次第ではできるし、設定次第ではできない

appiumをnative appに対して使う場合、UIとかの要素は指定できるのか?それともピクセル指定か?

できることを匂わせる記事
https://qiita.com/yuuhu04/items/5a96608ad96eccee34a0

以前、linuxでUIをいじろうと思って、sikulixやxdotoolに行き着きましたが、appiumでもできるかもしれません。
https://qiita.com/engineer/items/9989b388a0a9e3fa5bee#sikulix%E3%82%92%E4%BD%BF%E3%81%86%E6%96%B9%E6%B3%95

XCUITestはandroidに使えるのか?

調べていない

用語集

wdio

https://webdriver.io/
たぶんseleniumとかテストフレームワークとかを束ねる存在
cordova + appiumの設定例
https://github.com/asialgearoid/cordova-appium-example/blob/master/tests/wdio.conf.js

XCUITest

appium

selenium webdriver
https://qiita.com/k5n/items/899cf40a0021a6a92efd
多分seleniumのAPIでiphoneとかsimulatorとかを動かせるやつ。

appium-doctor

たぶんappiumがちゃんと設定できているかチェックするツール
https://github.com/appium/appium-doctor

selendroid

たぶんappiumの仲間

ios-driver

たぶんappiumの仲間
http://ios-driver.github.io/ios-driver/

nightmare

多分rubyのcapybara的なもの。javascriptで抽象的にブラウザを操作できる。
seleniumは使わないらしい。
electronを使うらしい。つまりchromiumを使うのが特徴ということか?
cordova関係無く、e2eテストに使える。
iosのテストには多分使えない。

ava

多分rspecとかmochaとかjasmine的なもの。
テストフレームワーク。

jsunit

すごい古そう
http://www.jsunit.net/
mochaとかの仲間?

参考リンク

ios, android, hybridについて、テスト手法をまとめてある。
https://stackoverflow.com/questions/18739352/automatic-testing-for-cordova-phonegap-webview-on-android

nightmare + avaでe2eテスト。cordovaとタイトルがついているが、あまり関係ない。
http://blog.aqutras.com/entry/2016/08/10/210000

1
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
1
0