中级
编写API端到端测试
未完成
中级参考
代码结构已给出,请填写 ____ 处
def solve():
from pyodide.http import open_url
from io import StringIO
orders_csv = open_url(____).read()
payments_csv = open_url(____).read()
import pandas as pd
from io import StringIO
orders = pd.read_csv(StringIO(____))
payments = pd.read_csv(StringIO(____))
class TestSuite:
def __init__(____): self.passed = self.failed = ____; self.results = []
def assert_equal(____):
ok = actual == expected
self.passed += ok; self.failed += not ok
self.results.append((____))
def assert_true(____):
self.passed += condition; self.failed += not condition
self.results.append((____))
def report(____):
for name, ok, actual, expected in self.results:
status = '____' if ok else f'____'
print(____)
print(____)
ts = TestSuite()
ts.assert_true("____", len(____) > ____)
ts.assert_true("____", orders['____'].notna().all())
ts.assert_true("____", (____).all())
valid_statuses = {'____','____','____','____','____'}
ts.assert_true("____", set(orders['____'].unique()).issubset(____))
ts.assert_true("____", len(____) > ____)
ts.assert_true("____", (____).all())
paid_orders = orders[orders['____'].isin(____)]['____']
pay_order_nos = set(payments['____'].astype(____))
ts.assert_true("____", all(____))
ts.report()
示例
输入
solve()
期望输出
[PASS] orders table not empty [PASS] all orders have order_no [PASS] all amounts > 0 [PASS] all statuses valid [PASS] payments exist [PASS] no negative amounts [PASS] paid orders have payments Total: 7 passed, 0 failed
👑
升级 VIP
解锁全部题目,畅通无阻地学习
- ✓ 解锁全部训练包所有题目
- ✓ 查看完整参考代码和提示
- ✓ 浏览器内直接运行 Python 代码
- ✓ 自动批改 + 进度追踪
30天
¥18
1年
¥99
2年
¥158
3年
¥199