معرفی شرکت ها


apiflows-1.0.9


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

A yaml data-drive HTTP API testing tools.
ویژگی مقدار
سیستم عامل -
نام فایل apiflows-1.0.9
نام apiflows
نسخه کتابخانه 1.0.9
نگهدارنده []
ایمیل نگهدارنده []
نویسنده -
ایمیل نویسنده Allen <aiddroid@gmail.com>
آدرس صفحه اصلی -
آدرس اینترنتی https://pypi.org/project/apiflows/
مجوز -
### apiflows testing - A yaml data-drive HTTP API testing tools. ### usage ``` pip3 install apiflows python3 -m apiflows [-c config.py] -t testcases/github.yaml ``` ### configuration(config.py) ``` #!/bin/env python3 import uuid import logging # common headers HEADERS = { 'content-type': 'application/json', 'x-token': '1234', } # common extracts EXTRACTS = { 'USERNAME':'allen' } def pre_testing(): """ pre testing """ logging.debug("pre_testing()...") HEADERS['x-apiflows-id'] = str(uuid.uuid4()) def pre_request(apicase): """ pre request """ # TODO here logging.debug("pre_request()...") apicase.set_header("mycookie", "PHPSESSIONID=apiflows") return apicase def do_request(apicase): logging.debug("do_request()...") apicase.do_request() return apicase def parse_response(apicase): """ parse HTTP response """ logging.debug("parse_response()...") code = apicase.parse_status_code() headers = apicase.parse_response_headers() body = apicase.parse_response_body() return {'code': code, 'headers': headers, 'body': body} def post_request(apicase): """ post request """ # TODO logging.debug("post_request()...") response = apicase.get_response() if response is not None: logging.debug(" RESPONSE: " + response.text) return apicase def post_testing(): """ post testing """ # TODO logging.debug("post_testing()...") ``` ### testcase example(github.yaml) ``` --- apicases: - name: 获取GitHub API列表(Get Github API list) url: https://api.github.com method: GET headers: x-token: 5678 data: '{"username":"apiflows"}' extracts: RATE_LIMIT_URL: $.rate_limit_url PUBLIC_GISTS_URL: $.public_gists_url ENCODING: in: headers exp: "$.Content-Encoding" assertions: - exp1: "$.hub_url" comparator: neq exp2: "" - exp1: "{{ENCODING}}" comparator: eq exp2: gzip - exp1: "{{RATE_LIMIT_URL}}" comparator: contains exp2: https - exp1: "{{PUBLIC_GISTS_URL}}" comparator: match exp2: (https:\/\/) ``` ### comparators - eq - neq - contains - match ### test result ``` 0:testcases/github.yaml [获取GitHub API列表(Get Github API list)]: https://api.github.com/?username=allen EXTRACTOR: EXTRACT [RATE_LIMIT_URL]=https://api.github.com/rate_limit EXTRACT [PUBLIC_GISTS_URL]=https://api.github.com/gists/public EXTRACT [ENCODING]=gzip ASSERTIONS: $.hub_url = https://api.github.com/hub [neq] {{ENCODING}} = gzip [eq] gzip {{RATE_LIMIT_URL}} = https://api.github.com/rate_limit [contains] https {{PUBLIC_GISTS_URL}} = https://api.github.com/gists/public [match] (https:\/\/) ``` ### for development ``` python3 -m build twine upload dist/* ```


زبان مورد نیاز

مقدار نام
>=3.5 Python


نحوه نصب


نصب پکیج whl apiflows-1.0.9:

    pip install apiflows-1.0.9.whl


نصب پکیج tar.gz apiflows-1.0.9:

    pip install apiflows-1.0.9.tar.gz