{"adoption": {"forks": 383, "observed_at": "2026-08-28T04:03:58.345800+00:00", "stars": 1202}, "canonical_url": "https://ross.abutalabs.com/products/automationtest", "card": {"archived": false, "artifact_type": "framework", "description": "自动化测试框架，支持接口自动化、WEB UI自动化、APP UI自动化、性能测试；支持多系统相互调用；支持接口与UI相互调用；支持dubbo接口调用", "domain": ["testing", "developer-tools", "apis"], "enriched": true, "function": ["testing", "e2e-testing", "http-client", "benchmarking", "ocr", "image-processing"], "health_score": 79, "homepage": null, "language": "Python", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["yanchunhuo/AutomationTest"], "name": "yanchunhuo/AutomationTest", "platform": ["python", "windows", "cross-platform"], "pushed_at": "2026-06-23T13:26:23+00:00", "repo": "yanchunhuo/AutomationTest", "stars": 1202, "tags": ["selenium", "appium", "pytest", "allure", "api-testing", "ui-testing", "performance-testing", "dubbo", "mobile-testing", "web-testing", "automation", "linux", "macos"], "topics": ["automated-testing", "selenium", "appium", "autotesting", "dubbo"], "urls": [], "use_cases": ["automate rest api tests in python", "run selenium web ui test suites", "automate android and ios app testing with appium", "generate allure test reports from pytest", "call dubbo interfaces from python tests", "run parallel test cases across systems", "load and performance test services"], "what_it_is": "A Python-based automation testing framework supporting API automation, web UI automation (Selenium), app UI automation (Appium), and performance testing. It integrates pytest, Allure reporting, database clients, and supports cross-system calls including Dubbo interfaces and API-UI interoperation.", "when_to_avoid": ["you want a lightweight single-purpose test tool", "you need official support or a maintained license", "your stack is not python 3.6+ based"], "when_to_choose": ["you need one framework covering api, web ui, and app ui automation", "your team uses pytest and wants allure reporting built in", "you need to mix dubbo, http, websocket, and database calls in test scenarios"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/automationtest", "repo": "yanchunhuo/AutomationTest", "role": "main", "score": 63}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:58.345800+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:20:39.127251+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9abd9c66b1233014cd58bb136449ad4ff6f8962645f42e653c76b2ca197e5bd1", "fetched_at": "2026-08-28T04:03:58.345800+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yanchunhuo/AutomationTest"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 89, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2542, "days_push": 71, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 63, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}