เนื่องจากเพิ่งเริ่มสร้างโปรเจค commit แรกๆจึงสั้นเลยนำมารวมกัน(1-3)ครับ
Commit 1 : start assignment1 : wordbucket
ทำการสร้าง project ชื่อ a1 (มาจาก assignment1) และ สร้าง functional test แบบง่าย ๆ ตามหนังสือ
obeythetestinggoat
@@ -0,0 +1,6 @@
+from selenium import webdriver
+
+browser = webdriver.Firefox()
+browser.get(' http://localhost:8000' )
+
+assert ' Django' in browser.title
Commit 2 : add README
ใส่ไฟล์ README.md เข้าไปประกอบโปรเจค
@@ -0,0 +1 @@
+# wordbucket
Commit 3 : First webpage's title
- ทำการสร้าง app ชื่อ wordbucket แก้ urls.py ของโปรเจค ให้เชื่อมต่อกับชี้ทางกับ function home_page() ใน views.py ของ app
@@ -14,8 +14,10 @@
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
-from django.urls import path
+from django.urls import include, path, re_path
+from wordbucket import views
urlpatterns = [
+ path(' ' , views.home_page, name = ' home' ),
path(' admin/' , admin.site.urls),
]
- เพิ่ม user story และ function พื้นฐานของ functional test (เช่น setUp, tearDown) ใส่ใน functional_tests.py โดยเป็นเรื่องของ user ชื่อ Ann เข้ามาลองใช้ webapp. ของเรา
@@ -1,6 +1,25 @@
from selenium import webdriver
+import unittest
-browser = webdriver.Firefox()
-browser.get(' http://localhost:8000' )
+class NewVisitorTest (unittest .TestCase ):
-assert ' Django' in browser.title
+ def setUp (self ):
+ self .browser = webdriver.Firefox()
+
+ def tearDown (self ):
+ self .browser.quit()
+
+ def test_can_start_a_list_and_retrieve_it_later (self ):
+ # Ann has heard about a cool new online word app. She goes
+ # to check out its homepage
+ self .browser.get(' http://localhost:8000' )
+
+ # She notices the page title and header mention Word Bucket lists
+ self .assertIn(' Word Bucket' , self .browser.title)
+ self .fail(' Finish the test!' )
+
+ # She is invited to enter a word item straight away
+ # She types "weeb" into a text box
+
+if __name__ == ' __main__' :
+ unittest.main(warnings = ' ignore' )
- แก้ config app ชื่อ wordbucket
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class WordbucketConfig (AppConfig ):
+ name = ' wordbucket'
@@ -0,0 +1,19 @@
+from django.urls import resolve
+from django.test import TestCase
+from django.http import HttpRequest
+
+from wordbucket.views import home_page
+
+class HomePageTest (TestCase ):
+
+ def test_root_url_resolves_to_home_page_view (self ):
+ found = resolve(' /' )
+ self .assertEqual(found.func, home_page)
+
+ def test_home_page_returns_correct_html (self ):
+ request = HttpRequest()
+ response = home_page(request)
+ html = response.content.decode(' utf8' )
+ self .assertTrue(html.startswith(' <html>' ))
+ self .assertIn(' <title>Word Bucket</title>' , html)
+ self .assertTrue(html.endswith(' </html>' ))
- สร้างหน้า homepage แรกของ assignment แบบง่ายๆ(มีแต่ title)
@@ -0,0 +1,6 @@
+from django.shortcuts import render
+from django.http import HttpResponse
+
+# Create your views here.
+def home_page (request ):
+ return HttpResponse(' <html><title>Word Bucket</title></html>' )
ไม่มีความคิดเห็น:
แสดงความคิดเห็น