ivmpfa commited on
Commit
67c83c1
·
verified ·
1 Parent(s): 90233c7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -38
app.py CHANGED
@@ -1,43 +1,24 @@
1
- import streamlit as st
2
- import backend # Importing backend functions
3
 
4
- # Title
5
- st.title("Test Case Generator - QA User Story")
6
 
7
- # Input field for the user story
8
- user_story = st.text_area("Enter the QA User Story", "")
9
 
10
- # Button to generate test cases
11
- if st.button("Generate Test Cases"):
12
- if user_story:
13
- with st.spinner("Generating test cases..."):
14
- test_cases = backend.generate_testcases(user_story)
15
- st.subheader("Generated Test Cases")
16
- if test_cases:
17
- for case in test_cases:
18
- st.write(f"- **Test Case**: {case.get('test_case', 'N/A')}")
19
- st.session_state.test_cases = test_cases # Store in session state
20
- else:
21
- st.error("Failed to generate test cases. Try a clearer input.")
22
- else:
23
- st.error("Please enter a user story.")
24
 
25
- # Export test cases
26
- st.sidebar.title("Export Test Cases")
27
- if st.sidebar.button("Export Test Cases as CSV"):
28
- if 'test_cases' in st.session_state:
29
- test_cases = st.session_state.test_cases
30
- csv_content = backend.export_test_cases(test_cases, 'csv')
31
- if csv_content:
32
- st.sidebar.download_button(
33
- label="Download CSV",
34
- data=csv_content,
35
- file_name="test_cases.csv",
36
- mime="text/csv"
37
- )
38
- else:
39
- st.sidebar.error("No test cases available.")
40
 
41
- # Footer
42
- st.markdown("---")
43
- st.write("Built by testcore")
 
 
 
 
 
 
1
+ from flask import Flask, request, jsonify
2
+ from transformers import pipeline
3
 
4
+ app = Flask(__name__)
 
5
 
6
+ # Load a model for text generation
7
+ generator = pipeline("text-generation", model="mistralai/Mistral-7B-Instruct")
8
 
9
+ @app.route("/generate", methods=["POST"])
10
+ def generate_test_cases():
11
+ data = request.json
12
+ user_story = data.get("user_story", "")
 
 
 
 
 
 
 
 
 
 
13
 
14
+ if not user_story:
15
+ return jsonify({"error": "User story is required"}), 400
 
 
 
 
 
 
 
 
 
 
 
 
 
16
 
17
+ # Generate test cases
18
+ prompt = f"Generate JSON test cases from this user story: {user_story}"
19
+ output = generator(prompt, max_length=300, do_sample=True)[0]["generated_text"]
20
+
21
+ return jsonify({"test_cases": output})
22
+
23
+ if __name__ == "__main__":
24
+ app.run(host="0.0.0.0", port=7860)