[ATest] Enable socket server to accept multi-client connection.

Use select api to refactor socket server related function in atest_tf_test_runner.py

Bug:140705413

Test: source && lunch
      m atest && atest-dev hello_world_test
      atest-dev hello_world_test -- --shard-count 2 won't happen socket
      time out error.

Change-Id: Ib987462116f6239f1fd57f6618eb9ec418bcc4e8
3 files changed
tree: dc529ab176626e9e616a4506d82597e09b25642f
  1. atest/
  2. clearcut_client/
  3. common_util/
  4. device_build_interfaces/
  5. global_configuration/
  6. invocation_interfaces/
  7. proto/
  8. python-lib/
  9. remote/
  10. res/
  11. src/
  12. test_framework/
  13. test_result_interfaces/
  14. tests/
  15. util-apps/
  16. .classpath
  17. .gitignore
  18. .project
  19. Android.bp
  20. Android.mk
  21. atest_tradefed.sh
  22. CleanSpec.mk
  23. error_prone_rules.mk
  24. MANIFEST.mf
  25. OWNERS
  26. PREUPLOAD.cfg
  27. pylintrc
  28. README.md
  29. run_tf_cmd.sh
  30. script_help.sh
  31. TEST_MAPPING
  32. tradefed.sh
  33. tradefed_win.bat
README.md

Trade Federation (TF / Tradefed)

TF is a test harness used to drive Android automated testing. It runs on test hosts and monitors the connected devices, handling test scheduling & execution and device management.

Other test harnesses like Compatibility Test Suite (CTS) and Vendor Test Suite (VTS) use TF as a basis and extend it for their particular needs.

Building TF:

  • source build/envsetup.sh
  • tapas tradefed-all
  • make -j8

More information at: https://source.android.com/devices/tech/test_infra/tradefed/

See more details about Tradefed Architecture at: https://source.android.com/devices/tech/test_infra/tradefed/architecture

If you are a tests writer you should start looking in the test_framework/ component which contains everything needed to write a tests in Tradefed.