SCROLL: Automatically generates documentation and unit-tests for python programs
=======
**Built with Data processing programs in mind**
[![PyPI version](https://badge.fury.io/py/scroll.svg)](https://badge.fury.io/py/scroll)
[![Downloads](https://pepy.tech/badge/scroll)](https://pepy.tech/project/scroll)
[![Python 3.6+](https://img.shields.io/badge/python-3.6+-blue.svg)](https://www.python.org/downloads/)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
## How it works
This tool monitors your function calls and returns while you "exercise" you program (i.e run functional tests).
It will collect this information (traces), record the order in which your functions run and generate documentation / tests using that information.
# Design concept
The final goal is to enable a developer/user browser through documentation that flows
in the order in which functions in the program run, hence the name SCROLL.
## Installation
```bash
pip install scroll
```
To install using wheel files, Check in [Distribution files](./dist)
## Example Usage
Lets say your file which contains the main entry function is called main.py
### An example main file with an entry function
```py
# main.py
def run():
'''this is your singular entry function'''
# your code here
if __name__ == '__main__':
run()
```
### Run the file using scroll on bash
```bash
scroll main.py
```
## How about some guidelines?
- There should be only one main entry function in your code
## To-Do
- add creating of url with class name / func name ancored on it
- add creating of SCROLL.md that has scroll of all functions
## Contributing
To get started contributing, visit the [CONTRIBUTING GUIDE](./CONTRIBUTING.md)
## Contributors and acknowledgment
1. Edison Abahurire [simicode](https://github.com/SimiCode)
## Similar Libraries that do Runtime-Introspection:
1. [pythoscope](https://github.com/mkwiatkowski/pythoscope) for Auto unit-test generation
2. [auger](https://github.com/laffra/auger) for Auto Unit-test generation
3. [MonkeyType](https://github.com/Instagram/MonkeyType) for Auto Type hinting / Annotation
4. [hypothesis](https://hypothesis.readthedocs.io/en/latest/index.html) for Auto test-case generation
## License
[MIT](https://choosealicense.com/licenses/mit/)
## Credits
- [MonkeyType](https://github.com/Instagram/MonkeyType): When I got this idea, My first option was to just plagiarise their code ;)
I also learned a lot from issue-conversations with [@carljm](https://github.com/carljm).
- [Flit](https://buildmedia.readthedocs.org/media/pdf/flit/latest/flit.pdf) which this wonderful library is packaged with.
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
共23个文件
py:8个
md:3个
js:2个
资源分类:Python库 所属语言:Python 资源全名:scroll-2021.11.17.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源详情
资源评论
资源推荐
收起资源包目录
scroll-2021.11.17.tar.gz (23个子文件)
scroll-2021.11.17
PKG-INFO 4KB
pyproject.toml 1KB
flit_build.sh 108B
run_demo.py 492B
.github
workflows
publish-to-pypi.yml 604B
CONCEPT.md 2KB
collected_traces.pkl 1KB
CONTRIBUTING.md 5KB
scroll
runner.py 601B
templates
scroll.css 2KB
index.html 8KB
generators.py 2KB
tracer.py 6KB
helpers.py 968B
__init__.py 1KB
setup.py 748B
.gitignore 51B
demo
docs
scroll.css 2KB
index.html 8KB
traces_data.js 2KB
functions_data.js 70B
demo.py 1KB
README.md 3KB
共 23 条
- 1
挣扎的蓝藻
- 粉丝: 13w+
- 资源: 15万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0