{ "info": { "author": "fnngj", "author_email": "fnngj@126.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Testing" ], "description": "## poium\n\n\n\n\u57fa\u4e8e selenium/appium \u7684 Page Objects \u8bbe\u8ba1\u6a21\u5f0f\u6d4b\u8bd5\u5e93\u3002\n\n* \u6781\u5927\u7684\u7b80\u5316\u4e86Page\u5c42\u7684\u5143\u7d20\u5b9a\u4e49\u3002\n* \u540c\u65f6\u652f\u6301selenium\u548cappium\n* \u901a\u8fc7JavaScript\u6269\u5c55\u4e86selenium API\n* \u5bf9\u539f\u751f API \u65e0\u635f\n\n## Installation\n\npip install:\n\n```shell\n> pip install poium\n```\n\nIf you want to keep up with the latest version, you can install with github repository url:\n\n```shell\n> pip install -U git+https://github.com/defnngj/poium.git@master\n```\n\n## Sample\n\n\u652f\u6301Selenium\u7684\u4f8b\u5b50\u3002\n\n```python\nfrom poium import Page, PageElement\nfrom selenium import webdriver\n\n\nclass BaiduIndexPage(Page):\n search_input = PageElement(name='wd')\n search_button = PageElement(id_='su')\n\n\ndriver = webdriver.Chrome()\n\npage = BaiduIndexPage(driver)\npage.get(\"https://www.baidu.com\")\n\npage.search_input = \"poium\"\npage.search_button.click()\n\ndriver.quit()\n```\n\n\u8fd8\u63d0\u4f9b\u4e86\u4e00\u5957JavaScript\u5c01\u88c5\u7684API\u3002\n\n```python\nfrom poium import Page, CSSElement\nfrom selenium import webdriver\n\n\nclass BaiduIndexPage(Page):\n search_input = CSSElement('#kw')\n search_button = CSSElement('#su')\n\n\ndriver = webdriver.Chrome()\n\npage = BaiduIndexPage(driver)\npage.get(\"https://www.baidu.com\")\n\npage.search_input.set_text(\"poium\")\npage.search_button.click()\n\ndriver.quit()\n```\n\n\u652f\u6301appium\u7684\u4f8b\u5b50\u3002\n\n```python\nfrom poium import Page, PageElement\nfrom appium import webdriver\n\nclass CalculatorPage(Page):\n number_1 = PageElement(id_=\"com.android.calculator2:id/digit_1\")\n number_2 = PageElement(id_=\"com.android.calculator2:id/digit_2\")\n add = PageElement(id_=\"com.android.calculator2:id/op_add\")\n eq = PageElement(id_=\"com.android.calculator2:id/eq\")\n\n# APP\u5b9a\u4e49\u8fd0\u884c\u73af\u5883\ndesired_caps = {\n 'deviceName': 'Android Emulator',\n 'automationName': 'appium',\n 'platformName': 'Android',\n 'platformVersion': '7.0',\n 'appPackage': 'com.android.calculator2',\n 'appActivity': '.Calculator',\n}\ndriver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)\n\npage = CalculatorPage(driver)\npage.number_1.click()\npage.add.click()\npage.number_2.click()\npage.eq.click()\n\ndriver.quit()\n```\n\n\u4f7f\u7528poium\u5c06\u5143\u7d20 __\u5b9a\u4f4d__ \u4e0e __\u64cd\u4f5c__ \u5206\u79bb\uff0c\u8fd9\u5c06\u4f1a\u975e\u5e38\u6709\u52a9\u4e8e\u89c4\u6a21\u5316\u81ea\u52a8\u5316\u6d4b\u8bd5\u7528\u4f8b\u7684\u7f16\u5199\u4e0e\u7ef4\u62a4\u3002\n\n## Documentation\n\n\u8bf7\u9605\u8bfb [wiki](https://github.com/defnngj/poium/wiki)\n\n## Project History\n\n\u53c2\u8003\u9879\u76ee\uff1ahttps://github.com/eeaston/page-objects\n\n\u53c2\u8003\u9879\u76ee\u5df2\u7ecf\u4e0d\u518d\u7ef4\u62a4\uff0c\u6211\u9605\u8bfb\u4e86\u539f\u9879\u76ee\u4ee3\u7801\uff0c\u867d\u7136\u53ea\u6709100\u591a\u884c\uff0c\u4f46\u8bbe\u8ba1\u975e\u5e38\u7cbe\u5999\u3002\u672c\u9879\u76ee\u5728\u6b64\u57fa\u7840\u4e0a\u8fdb\u884c\u5f00\u53d1\u3002\n\n\u539f\u9879\u76ee\u540d\uff1ahttps://pypi.org/project/selenium-page-objects/\n\n\u672c\u9879\u76ee\u7684\u6838\u5fc3\u662f Page Objects\u8bbe\u8ba1\u6a21\u5f0f, \u4e8e\u662f\u53d6\u4e86 __PO__\uff0c\u540c\u65f6\u652f\u6301selenium/appium\uff0c\u4e8e\u662f\u53d6\u4e86 __ium__\uff0c\u90a3\u4e48\u65b0\u7684\u9879\u76ee\u547d\u540d\u4e3a\uff1a__poium__\u3002\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/defnngj/poium", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "poium", "package_url": "https://pypi.org/project/poium/", "platform": "", "project_url": "https://pypi.org/project/poium/", "project_urls": { "Homepage": "https://github.com/defnngj/poium" }, "release_url": "https://pypi.org/project/poium/0.5.1/", "requires_dist": [ "selenium (>=3.14.1)", "Appium-Python-Client (>=0.39)" ], "requires_python": "", "summary": "Selenium/appium-based Page Objects test library.", "version": "0.5.1" }, "last_serial": 5818684, "releases": { "0.2.2": [ { "comment_text": "", "digests": { "md5": "4d0a9a4716be74b45af25fe3e2c810b1", "sha256": "abbcb5852894d8a803eb45ddb639ab3b244ca5315e3b86dc7f7d40feeae53f7b" }, "downloads": -1, "filename": "poium-0.2.2-py3.6.egg", "has_sig": false, "md5_digest": "4d0a9a4716be74b45af25fe3e2c810b1", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 14151, "upload_time": "2019-01-17T11:03:00", "url": "https://files.pythonhosted.org/packages/9b/26/0f7ada49fbbd41a816c7dca7a8b80415b4840edd88d2368705ddbd43a73b/poium-0.2.2-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "b4e48bc62b4aa06e2b6d885c3468263a", "sha256": "0071178954484b31340dc2f9fa40adef7089ddbddf954ff3b19dec6a86e2874c" }, "downloads": -1, "filename": "poium-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "b4e48bc62b4aa06e2b6d885c3468263a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7024, "upload_time": "2019-01-07T04:08:07", "url": "https://files.pythonhosted.org/packages/75/1a/27f13f95a3fe65e1f09a6d160862041fde8efa68f19dadda3ad566aafbb3/poium-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb7f7a15ac35c1249b813d15f3896485", "sha256": "df0b2ce14c185f3a273022e975b42fe1cbff565b2c2457ecc79878dc5033f60d" }, "downloads": -1, "filename": "poium-0.2.2.tar.gz", "has_sig": false, "md5_digest": "cb7f7a15ac35c1249b813d15f3896485", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5483, "upload_time": "2019-01-07T04:08:09", "url": "https://files.pythonhosted.org/packages/9f/6b/f3ca79a7d14a5ae4356b4fcf6f8c75e88a0228a2d86921825fbaea9d4166/poium-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "8e9b09f9e2929b8a03f65b046f78f855", "sha256": "557081ecd928912777742298d8aad8a4b67f29b25b56305c91359f612695235e" }, "downloads": -1, "filename": "poium-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "8e9b09f9e2929b8a03f65b046f78f855", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8096, "upload_time": "2019-01-17T11:02:58", "url": "https://files.pythonhosted.org/packages/b9/79/94367f5d8e9ebd88d8b3a3fc337e3b1aea16b6c2980b4761682feea27a1b/poium-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f20a17066352929fe7f6de5f7d7a8da5", "sha256": "4b6109c652e8cd1846134d8ec1a99199c48aaa6cb0e1102614bba129c3e0be4b" }, "downloads": -1, "filename": "poium-0.2.3.tar.gz", "has_sig": false, "md5_digest": "f20a17066352929fe7f6de5f7d7a8da5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6669, "upload_time": "2019-01-17T11:03:02", "url": "https://files.pythonhosted.org/packages/85/42/269aa69728ce27ed1e9d0e9efc816ea71fdc9ee1c65471894afe32a1fb32/poium-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "ee2dc5bbcfb0837825b1b7fcae3a99da", "sha256": "125001cfce881d90d8adc0fa34304477627e5bf2775870b392b179812a754a5e" }, "downloads": -1, "filename": "poium-0.3.0-py3.6.egg", "has_sig": false, "md5_digest": "ee2dc5bbcfb0837825b1b7fcae3a99da", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 13962, "upload_time": "2019-01-21T09:52:35", "url": "https://files.pythonhosted.org/packages/49/66/e82865496c90849c5760db04d6c6b66583834665ce821363d43bfae0af69/poium-0.3.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "1b9ea4c023995504114e3e2b098aeafd", "sha256": "0f12aea5df5e944aafd98c66cafcd93cddd2a2a73f4ad6845856538fb323d855" }, "downloads": -1, "filename": "poium-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "1b9ea4c023995504114e3e2b098aeafd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7970, "upload_time": "2019-01-21T09:52:33", "url": "https://files.pythonhosted.org/packages/ee/f6/b9447595c235632fcac9f17a1add2fc10f8843d3f8774f070ab4e91a0358/poium-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "879b182968662b7fc1976e97127f5534", "sha256": "c997742ccae31c1beca90b47fe09433f987fb61f895cccaf00a88512da7c13b0" }, "downloads": -1, "filename": "poium-0.3.0.tar.gz", "has_sig": false, "md5_digest": "879b182968662b7fc1976e97127f5534", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6668, "upload_time": "2019-01-21T09:52:36", "url": "https://files.pythonhosted.org/packages/31/b9/73d6bc54d3b04158483d0c01613b94f2a7fabd2cded84b53499122942bc7/poium-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "0bc88b1b454790f6efe688436858cc2a", "sha256": "3a2af6bd2f6063be3c4b975d75907453d86aab85cbf69eb384965c632d6f8bd7" }, "downloads": -1, "filename": "poium-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0bc88b1b454790f6efe688436858cc2a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8571, "upload_time": "2019-03-27T15:17:02", "url": "https://files.pythonhosted.org/packages/07/df/ea176d019aab8fc4aad0ec443201fbdb4f47fb9bcc0ea8e004ac3931cfe6/poium-0.3.1-py3-none-any.whl" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "e1c7a3b9522837e5c478e1234cddcdef", "sha256": "acf602bf83d68e1a954642be795bad30d7d56c87c6e2ea9c4d19ddc5b8e11173" }, "downloads": -1, "filename": "poium-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "e1c7a3b9522837e5c478e1234cddcdef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11865, "upload_time": "2019-04-11T09:59:42", "url": "https://files.pythonhosted.org/packages/5d/de/5de5a2eb8b97a92048988b0045293d6e999878d511c4fe615edd02dd18f8/poium-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "956332c1a6272da2eddadc9d619c44a6", "sha256": "210d9d7340c834d5d5eee0dc5bd5c6aef57abf49e4aa67c13286b13f4a52f5a9" }, "downloads": -1, "filename": "poium-0.3.2.tar.gz", "has_sig": false, "md5_digest": "956332c1a6272da2eddadc9d619c44a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7404, "upload_time": "2019-04-11T10:00:22", "url": "https://files.pythonhosted.org/packages/f2/89/ab6aa87d2e2b3a7903f7a1e87898322cea8e6013f0f8106ec484128cb8de/poium-0.3.2.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "90246ff3cb543db05c2d5a1984481b04", "sha256": "949459c63ffe399097c05428bdec971c10b8f3b2a1ab07a29b45a0c1a73b31a3" }, "downloads": -1, "filename": "poium-0.3.5-py3-none-any.whl", "has_sig": false, "md5_digest": "90246ff3cb543db05c2d5a1984481b04", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12052, "upload_time": "2019-06-12T01:40:34", "url": "https://files.pythonhosted.org/packages/2e/47/1df43c9100d65369f0265b0df6d42198e7d9c64f4445b22042236c64ece2/poium-0.3.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "966c997003b7e2ff18566c84b897d7c3", "sha256": "be6e3cf754378d682edf78bf6e31e2cf21a2146ba2468521ceaf20d20c9eef14" }, "downloads": -1, "filename": "poium-0.3.5.tar.gz", "has_sig": false, "md5_digest": "966c997003b7e2ff18566c84b897d7c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7588, "upload_time": "2019-06-12T01:40:36", "url": "https://files.pythonhosted.org/packages/67/21/17c03edb009e5c09663e9c5a40a6ae76293feaf6cd5b73646532edc5986d/poium-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "239b4f012a5cb94cee0891bc35c8bab5", "sha256": "9ebc5b1f1a27d6095d670369f11abe437e019da13199457790d132cc8806dbe0" }, "downloads": -1, "filename": "poium-0.3.6-py3-none-any.whl", "has_sig": false, "md5_digest": "239b4f012a5cb94cee0891bc35c8bab5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12309, "upload_time": "2019-07-16T11:50:44", "url": "https://files.pythonhosted.org/packages/a2/8b/27b3bdc8d25a808c47d334a6e1e85a0059c4388318734e215dd7ca9c24a3/poium-0.3.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d67a200a4b5e31d303a879c3489a9de8", "sha256": "7325c4ec9db7054ab7ce562a08c434d7182c697386d5e76482db49d7a2c2e99f" }, "downloads": -1, "filename": "poium-0.3.6.tar.gz", "has_sig": false, "md5_digest": "d67a200a4b5e31d303a879c3489a9de8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7810, "upload_time": "2019-07-16T11:50:46", "url": "https://files.pythonhosted.org/packages/ba/79/724ebd19512b494516b6d1793b9c4bd479fe4b41a206ff50d2f64eb17dd4/poium-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "5e2a51891e17a64ea2a78360f71f0305", "sha256": "a5cfb8d99e751c306363dd369c7571e832209040401ae9b3502f2e7b04e17ac1" }, "downloads": -1, "filename": "poium-0.3.7-py3-none-any.whl", "has_sig": false, "md5_digest": "5e2a51891e17a64ea2a78360f71f0305", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12431, "upload_time": "2019-08-03T14:30:01", "url": "https://files.pythonhosted.org/packages/2f/f0/b2c8cd918e9988925be3c9adab7f0b53e4787fdf9fc62d3e43530dcc7260/poium-0.3.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1109722a481a693e96737744d2d88d09", "sha256": "a571e37758ca5ae666c9e5139f8d8fd94a6c7a33cfd03dc2fc7a5dfb1916638e" }, "downloads": -1, "filename": "poium-0.3.7.tar.gz", "has_sig": false, "md5_digest": "1109722a481a693e96737744d2d88d09", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7947, "upload_time": "2019-08-03T14:30:06", "url": "https://files.pythonhosted.org/packages/22/48/079044e7d11ef0d42f247944c48bbf9dcf25972e3db7c770eb9609f1c1d9/poium-0.3.7.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "c3cd58f81c4757ef71e68365d980a15e", "sha256": "fcd723bb44c5ad6997479939f04246253b6dd81c14a7073d2bf6b55860ce27ab" }, "downloads": -1, "filename": "poium-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c3cd58f81c4757ef71e68365d980a15e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15183, "upload_time": "2019-08-19T02:30:52", "url": "https://files.pythonhosted.org/packages/b0/75/88e5780c98cc418aaaea55671624723b8999257047744dab0da2f60fb096/poium-0.5.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d7bf79cdb75fd87fa7d5ff6c2db2f426", "sha256": "e03c82b3a07fa57d10bfae11a10c90d2bb860e3e881a8e3e5da64f2f467f27aa" }, "downloads": -1, "filename": "poium-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d7bf79cdb75fd87fa7d5ff6c2db2f426", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7880, "upload_time": "2019-08-19T02:30:56", "url": "https://files.pythonhosted.org/packages/f3/8a/dccd48d0bf1cf57433de491aa9c57a58dbbecb658e0ef477083bcf99b2ee/poium-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "55f6b8c214f27cf427af1de0e5fb5016", "sha256": "56da90ec622c1d0fb85f3e74a63f8c43013e1e89eb4f0a4310dd91d1fd721dc8" }, "downloads": -1, "filename": "poium-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "55f6b8c214f27cf427af1de0e5fb5016", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15572, "upload_time": "2019-09-12T07:19:28", "url": "https://files.pythonhosted.org/packages/eb/bc/c081e09da5fa2133b30e29feef43efe74534e408faa5b9cad52ec6836fc4/poium-0.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "14a6ae978f3ab2bcedb1197bfed83d62", "sha256": "ba377370d2487dd2a65ac0d02e4751824bc0bdfcc4748049daf5a21b4282c535" }, "downloads": -1, "filename": "poium-0.5.1.tar.gz", "has_sig": false, "md5_digest": "14a6ae978f3ab2bcedb1197bfed83d62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8327, "upload_time": "2019-09-12T07:19:31", "url": "https://files.pythonhosted.org/packages/d8/82/7aacf66bc6a56b7abcef4bbe7b00a971b3203fe3d3dc2a63d9bc9d5a154c/poium-0.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "55f6b8c214f27cf427af1de0e5fb5016", "sha256": "56da90ec622c1d0fb85f3e74a63f8c43013e1e89eb4f0a4310dd91d1fd721dc8" }, "downloads": -1, "filename": "poium-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "55f6b8c214f27cf427af1de0e5fb5016", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15572, "upload_time": "2019-09-12T07:19:28", "url": "https://files.pythonhosted.org/packages/eb/bc/c081e09da5fa2133b30e29feef43efe74534e408faa5b9cad52ec6836fc4/poium-0.5.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "14a6ae978f3ab2bcedb1197bfed83d62", "sha256": "ba377370d2487dd2a65ac0d02e4751824bc0bdfcc4748049daf5a21b4282c535" }, "downloads": -1, "filename": "poium-0.5.1.tar.gz", "has_sig": false, "md5_digest": "14a6ae978f3ab2bcedb1197bfed83d62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8327, "upload_time": "2019-09-12T07:19:31", "url": "https://files.pythonhosted.org/packages/d8/82/7aacf66bc6a56b7abcef4bbe7b00a971b3203fe3d3dc2a63d9bc9d5a154c/poium-0.5.1.tar.gz" } ] }