I'd like to note that when I did this I had pretty much no idea what I was doing lol. The 'base' kinda works, but I'm guessing an experienced dev could do a much better job.
Feel free to use it as a base on how to structure a project tho.
A library used to create automated tests for iOS and Android using Appium with golang
Appigo is still in development, so a lot of features aren't implemented yet
Still, some are already working:
- Starting a session
- Closing the session
- Finding an element (with all locator strategies)
- Tapping on an element
- Sending keys to an element
- Setting a implicit wait
A simple example of an appigo implementation
package main
import (
"github.com/rockisch/appigo/driver"
"github.com/rockisch/appigo/mobileby"
)
func main() {
caps := map[string]string{
"deviceName": "iPhone 6",
"platformName": "iOS",
"platformVersion": "11.4",
"app": "/Users/joaohaas/Documents/apps/TestApp.app",
}
driver := driver.CreateDriver("http://0.0.0.0:4723", caps)
driver.Init()
defer driver.Close()
okButton := driver.FindElement("Ok", mobileby.ById)
okButton.Click()
}