Skip to content

zjimf/Travel-Schedule

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Getting Started with Travel-Schedule

Note

Sorry, the Google map API used in this project has been closed, so the scheduling function is temporarily unavailable.

# Download Library
npm install

# in ./Travel-Schedule
npm start

Travel-Schedule - 專案文件

專案簡介

本專案旨在為台灣的旅遊愛好者提供一個便捷的平台,讓使用者能夠輕鬆地瀏覽、計畫並分享旅遊行程。平台還會根據使用者的個人偏好和需求,推薦獨特的景點和行程。

專案連結

專案目標

  1. 協助使用者規劃旅遊行程。
  2. 提供分享和瀏覽行程文章的功能。
  3. 支援會員帳號功能,包括註冊、登入、密碼重設等。

核心功能

  1. 最新消息:顯示服務的最新更新與通知。
  2. 會員登入/註冊:提供會員登入與註冊的功能介面。
  3. 行程規劃:使用者可以規劃起點、終點及中途景點的行程。
  4. 行程文章:使用者可以瀏覽與分享旅遊行程,並針對行程進行喜好與留言操作。

架構與技術

技術需求

  • 前端框架:React.js
  • 後端伺服器:Node.js
  • 套件管理:npm
  • UI 框架:Material UI
  • 資料庫:Firebase Firestore
  • 地圖服務:Google Maps API
  • 版本控制:Git

系統架構

  1. MVC 架構:採用 MVC 設計模式,將應用程式劃分為 Model、View 和 Controller 三個主要部分,並使用單向數據流進行數據管理。
  2. 資料層 (Data Layer):負責處理與 Firebase Firestore 的資料交互。
  3. 邏輯層 (Business Logic Layer):負責核心業務邏輯與數據處理。

系統功能介紹

使用案例

  • 登入功能:使用者可透過電子郵件與密碼或 Google 帳號登入。
  • 行程規劃功能:使用者可以根據 Google Maps API 規劃行程,選擇起點、終點及節點數量,並調整行程順序。
  • 行程文章管理:使用者可分享並瀏覽行程文章,對文章進行喜好及留言。

ER-diagram

Swimlane-diagram

MVC

測試計畫

單元測試

採用「灰箱測試」方法,針對核心功能進行單元測試,包括會員註冊、忘記密碼、登入、行程規劃等功能模組。主要測試項目包括:

  1. 會員註冊測試:測試使用者註冊功能是否正常運作。
  2. 忘記密碼測試:測試是否可以成功發送重設密碼的信件。
  3. 登入功能測試:測試會員的登入流程與正確性。
  4. 行程規劃測試:測試節點安排、起點終點輸入與節點調整功能。

整合測試

進行整合測試,確保各功能模組之間的協同運作。測試項目包括:

  1. 非會員測試:測試未註冊使用者的操作限制。
  2. 會員功能測試:測試會員註冊、登入、忘記密碼及登出功能的整合性。
  3. 行程分享與留言測試:測試行程分享與留言功能。

測試結果

  • 會員註冊測試結果:所有測試案例通過,會員可以正確註冊並收到確認信件。
  • 行程規劃測試結果:測試結果顯示使用者可以順利安排節點並生成行程。
  • 行程文章測試結果:使用者能夠正常發表、刪除文章,並對文章點讚。

結論

本專案透過整合最新的前後端技術,為使用者提供一個友善且功能豐富的台灣旅遊規劃平台,並確保系統的安全性、穩定性及使用者體驗。單元與整合測試結果顯示系統各項功能運作正常,能夠滿足使用者需求。

About

Travel schedule in google map

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors