[英]Android functional test; send geo location to emulator
我們的android應用程序變得相當大,我們希望為我們的應用程序使用功能測試來防止回歸。 我們正在尋找實現這一目標的方案。
我們使用地理位置,所以現在我們通過在DDMS中輸入lat / long來測試應用程序。 如果我們要測試它,應該可以以編程方式設置這些地理位置。
是否有一個框架,我們可以用來功能測試我們的Android應用程序,並將這些更新發送到我們的模擬器?
如果你在Eclipse中編譯,你可以偽造android模擬器中的lat / lon:
我面臨同樣的問題。 雖然此解決方案未內置於robotium中,但您應該能夠將其變為可用於單元測試的實用程序。
如果你使用monkeyrunner,那么你可以使用這個函數:
def telnet(host, port):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(2)
# connect to remote host
try :
s.connect((host, port))
except :
print 'Unable to connect'
sys.exit()
print 'Connected to remote host'
return s
def geo_fix(port, lat, lng):
print "setting gps to " + str(lat) + "," + str(lng)
socket = telnet("localhost", port)
socket.send("geo fix " + str(lng) + " " + str(lat) + "\n")
socket.send("exit\n")
socket.close()
geo_fix(5554, 32.0878802, 34.797246)
我找不到從MonkeyDevice獲取模擬器端口的方法,所以我手動傳遞端口,但如果我們可以從設備對象中弄清楚它會更好
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.