test_app.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # coding: utf-8
  2. # author: codeskyblue
  3. import pytest
  4. import uiautomator2 as u2
  5. PACKAGE = "com.example.u2testdemo"
  6. def test_wait_activity(d: u2.Device):
  7. # assert app.wait_activity('.MainActivity', timeout=10)
  8. d.app_start(PACKAGE, activity=".AdditionActivity", wait=True)
  9. assert d.wait_activity('.AdditionActivity', timeout=3)
  10. assert not d.wait_activity('.NotExistActivity', timeout=1)
  11. def test_app_wait(app: u2.Device):
  12. assert app.app_wait(PACKAGE, front=True)
  13. def test_app_start_stop(d: u2.Device):
  14. assert PACKAGE in d.app_list()
  15. d.app_stop(PACKAGE)
  16. assert PACKAGE not in d.app_list_running()
  17. d.app_start(PACKAGE, wait=True)
  18. assert PACKAGE in d.app_list_running()
  19. def test_app_clear(d: u2.Device):
  20. d.app_clear(PACKAGE)
  21. # d.app_stop_all()
  22. def test_app_info(d: u2.Device):
  23. d.app_info(PACKAGE)
  24. with pytest.raises(u2.AppNotFoundError):
  25. d.app_info("not.exist.package")
  26. def test_auto_grant_permissions(d: u2.Device):
  27. d.app_auto_grant_permissions(PACKAGE)
  28. def test_session(d: u2.Device):
  29. app = d.session(PACKAGE)
  30. assert app.running() is True
  31. assert app.pid > 0
  32. old_pid = app.pid
  33. app.restart()
  34. assert old_pid != app.pid
  35. with app:
  36. app(text="Addition").info