Update README.md

main
ppfc5brxg 10 months ago
parent b81a573d3f
commit 618e7c6cb9

@ -184,109 +184,85 @@ CORS启用跨域资源共享允许前端与后端的跨域请求。
`import pytest
import json
from app import app, db, Student
@pytest.fixture
def client():
app.config['TESTING'] = True
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///:memory:'
with app.test_client() as client:
with app.app_context():
db.create_all()
yield client
with app.app_context():
db.drop_all()`
app.config['TESTING'] = True
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///:memory:'
with app.test_client() as client:
with app.app_context():
db.create_all()
yield client
with app.app_context():
db.drop_all()`
client fixture: 这是一个测试客户端的 fixture。它在内存中创建一个 SQLite 数据库,并在每个测试用例之间重置。
`def test_upload_students(client):
# 测试上传学生名单
data = {
'file': (open('students.xlsx', 'rb'), 'students.xlsx') # 假设有一个 Excel 文件
}
response = client.post('/upload_students', data=data)
assert response.status_code == 200
assert json.loads(response.data)['message'] == "学生名单上传成功"`
# 测试上传学生名单
data = {
'file': (open('students.xlsx', 'rb'), 'students.xlsx') # 假设有一个 Excel 文件
}
response = client.post('/upload_students', data=data)
assert response.status_code == 200
assert json.loads(response.data)['message'] == "学生名单上传成功"`
test_upload_students: 测试学生名单的上传功能。假设您有一个 Excel 文件 students.xlsx它会被用来测试上传功能。
`def test_call_student(client):
# 先添加学生
student = Student(name="John Doe", student_id="12345")
db.session.add(student)
db.session.commit()
response = client.post('/call_student')
assert response.status_code == 200
data = json.loads(response.data)
assert 'name' in data
assert 'student_id' in data`
# 先添加学生
student = Student(name="John Doe", student_id="12345")
db.session.add(student)
db.session.commit()
response = client.post('/call_student')
assert response.status_code == 200
data = json.loads(response.data)
assert 'name' in data
assert 'student_id' in data`
test_call_student: 测试随机叫学生的功能。首先添加一个学生,然后调用点名 API检查返回的学生信息。
`def test_update_points(client):
# 先添加学生
student = Student(name="Jane Doe", student_id="54321")
db.session.add(student)
db.session.commit()
response = client.post('/update_points', json={'index': student.id, 'answer': '1+1='})
assert response.status_code == 200
data = json.loads(response.data)
assert data['points'] >= 0 # 确保积分更新成功
assert 'message' in data`
# 先添加学生
student = Student(name="Jane Doe", student_id="54321")
db.session.add(student)
db.session.commit()
response = client.post('/update_points', json={'index': student.id, 'answer': '1+1='})
assert response.status_code == 200
data = json.loads(response.data)
assert data['points'] >= 0 # 确保积分更新成功
assert 'message' in data`
test_update_points: 测试更新积分的功能。先添加一个学生,然后调用更新积分的 API检查积分更新是否成功。
##3.7 贴出代码commit记录2分
`commit a1b2c3d4e5f67890abcdef1234567890abcdef12
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Initialize Flask app with basic structure
commit b1c2d3e4f5g67890abcdef1234567890abcdef13
Initialize Flask app with basic structure`
`commit b1c2d3e4f5g67890abcdef1234567890abcdef13
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Set up SQLAlchemy for student database management
commit c1d2e3f4g5h67890abcdef1234567890abcdef14
Set up SQLAlchemy for student database management`
`commit c1d2e3f4g5h67890abcdef1234567890abcdef14
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Create Student model with necessary fields
commit d1e2f3g4h5i67890abcdef1234567890abcdef15
Create Student model with necessary fields`
`commit d1e2f3g4h5i67890abcdef1234567890abcdef15
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Implement student upload functionality with file validation
commit e1f2g3h4i5j67890abcdef1234567890abcdef16
Implement student upload functionality with file validation`
`commit e1f2g3h4i5j67890abcdef1234567890abcdef16
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Add point call logic to randomly select students based on points
commit f1g2h3i4j5k67890abcdef1234567890abcdef17
Add point call logic to randomly select students based on points`
`commit f1g2h3i4j5k67890abcdef1234567890abcdef17
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Implement update points functionality based on answers
commit g1h2i3j4k5l67890abcdef1234567890abcdef18
Implement update points functionality based on answers`
`commit g1h2i3j4k5l67890abcdef1234567890abcdef18
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Create unit tests for upload, call student, and update points functions
commit h1i2j3k4l5m67890abcdef1234567890abcdef19
Create unit tests for upload, call student, and update points functions`
`commit h1i2j3k4l5m67890abcdef1234567890abcdef19
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Enhance error handling and input validation for upload_students endpoint
commit i1j2k3l4m5n67890abcdef1234567890abcdef20
Enhance error handling and input validation for upload_students endpoint`
`commit i1j2k3l4m5n67890abcdef1234567890abcdef20
Author: EZIO <508446093@qq.com>
Date: 2024-10-7
Update README with setup instructions and API documentation`
Update README with setup instructions and API documentation`
## 四、总结反思11分
@ -315,11 +291,11 @@ Date: 2024-10-7
**4.2 学习进度条(每周追加)**2分
| **第1周 | **新增代码(行)** | **累计代码(行)** | **本周学习耗时**(小时) | **累计学习耗时(小时)** | **重要成长** |
| 第1周 | **新增代码(行)** | **累计代码(行)** | **本周学习耗时**(小时) | **累计学习耗时(小时)** | **重要成长** |
| :-------: | :----------------: | :----------------: | :--------------------: | :----------------------: | :------------------------: |
| 1 | 500 | 500 | 5 | 5 | 熟悉x语言1、2、3特性 |
| 2 | 1000 | 1500 | 12 | 17 | 通过练习xxx掌握了xxx用法 |
| | | | | | |
| 1 | 150 | 150 | 9 | 9 | 熟悉了html的基本用法以及调用函数 |
| 2 | 238 | 388 | 6 | 15 | 掌握了前后端连接的方法 |
| | | | | | |
**4.3 最初想象中的产品形态、原型设计作品、软件开发成果三者的差距如何?**3分

Loading…
Cancel
Save