-
Notifications
You must be signed in to change notification settings - Fork 3
Website and database test and release
Dixin Yan edited this page Apr 29, 2018
·
2 revisions
- PC
- 360 browser
- Baidu browser
- Chrome
- Edge
- Firefox
- IE 11, IE 10, IE 9
- Opera
- QQ browser
- Sogou browser
- UC browser
- macOS (Follow these steps to install macOS VM on Windows PC: https://techsviewer.com/install-macos-sierra-vmware-windows)
- Chrome
- Firefox
- Safari
- Ubuntu (Install Ubuntu VM on Windows PC)
- Chrome
- Firefox
- Android
- Chrome
- Edge
- Firefox
- Opera
- iOS
- Chrome
- Edge
- Firefox
- Opera
- Safari
All the above browsers should be tested because
- They are different. Event one browser, like Chrome, works differently on different platforms.
- I have very carefully designed, very strict security policies in both database and website code, to prevent data and image theft/crawling, when the browsers are upgraded, they may stop working. For example, 360 browser recently has a new way to handle cookies, which is different from most of the other browsers. This problem was identified in tests, and the code is updated to adapt to the new behavior of 360 browser.
-
- It should be rendered correctly.
- All elements in all sections (intro, search, articles, news, videos, wechat, about, contact, donation, contributors) should be displayed, organized, and aligned.
- When resizing the browser, all elements in all sections should adapt to all screen sizes.
-
- All text should be correct with no typo, and specific.
-
- All images should be correct and up to date, especially the QR codes.
-
- The navigation bar, logo, navigation menu, navigation items, and search should be displayed correctly.
- when resizing the browser, the navigation bar, logo, navigation menu, navigation items, and search should be adaptive to all screen sizes.
- The navigation menu and items should be expanded and collapsed correctly.
- When clicking each navigation item, the web page should navigate to the correct target with a smooth animation, and the hash in URI should be updated to the correct value (#home, #research, #news, #videos, #wechat, #about, #contact, #donation, #contributors), and the clicked navigation item should be highlighted.
- When scroll up and down the web page, the hash in URI should be automatically updated to the correct value (#home, #research, #news, #videos, #wechat, #about, #contact, #donation, #contributors), and the corresponding navigation item should be highlighted.
-
- Initially, the search text box should have the default character
车
. The the web page should display the result for车
. - The search text box should validate the input. The input must be a single character and must be Chinese character. If not, a proper error message should be displayed.
- If the the search text box has valid value, when pressing enter or clicking the search button, it should start the search. The search button should be disabled and not clickable, and display a loading indicator.
- When the search is done, the search button should be enabled. If there is any error, a proper error message should be displayed. If not, the search result should be displayed.
- when the search is done, the page should scroll down to error message or search result automatically with smooth animation. The hash in URI should be updated to the searched Chinese character, like
\#车
or '#%E8%BD%A6'. - Change the hash in URI to Chinese character, like
\#人
or\#%E4%BA%BA
, and press enter, the specified Chinese character should be searched.
- Initially, the search text box should have the default character
-
Use test characters in https://github.com/Dixin/Etymology/issues/83
- The etymology result should be correct.
- The Unicode hyperlinks should work correctly.
- The oracle, bronze, seal, liushutong characters should be displayed correctly with picture and id label.
- when resizing the browser, the layout of etymology and all characters should be adaptive to all screen sizes.
-
- Clicking the image or id label, a modal dialog should pop up. A large smooth character should be displayed correctly in the dialog.
- When resizing the browser, the dialog layout should be adaptive in the page. The large character image should be adaptive in the dialog.
- The dialog should be closed When clicking the space outside the dialog, or clicking the close button at the top of the dialog, or clicking the close button at the bottom of the dialog.
- When clicking a different character, the dialog should pop up and show the different character.
-
- The text box should have the same search behavior as the main search.
- The search button should have the same search behavior as the main search.
- The search button should have synchronized status as the main search. when clicking either search button, both search buttons should be disabled and show the loading indicator. When the search is done, both search buttons should be enabled.
- The text box should be synchronized with the main search. When clicking either search button, the searched Chinese character should be displayed in both text boxes.
-
- When clicking this button, it should pop a character in the main search text box as well as the text box in navigation bar, and display the result.
- The character should be commonly used character.
- The search result should have at least one oracle, at least one bronze, at least one seal, at least one liushutong.
-
- All hyperlinks (articles, wechat posts, news, videos, emails) should all work and point to the right target.
-
- Each article's layout and style should be correct.
- Each article should display header and footer correctly.
- Clicking the header should navigate back to home page correctly.
- When resizing the browser, the article should be adaptive to all screen sizes.
- The article URI should be consistent with the the article title texts, e.g.
why-study-chinese-etymology
.
- Review GitHub issues, make sure all issues relevant to the release are closed properly.
- Take a snapshot of
development
database, deploy asstaging
. - Deploy code to
staging
website, connected withstaging
database. - Test
staging
website with Chrome, using the above test cases. - Repeat the tests in 360 browser, Baidu browser, Edge, Firefox, IE 11, IE 10, IE 9, Opera, QQ browser, Safari, Sogou browser, UC browser.
- If there is any issue, fix the issue, and repeat from step 1. If everything is good, swap (
staging
website +staging
database) with (production
website +production
database). - Delete previous
production
website, delete previousproduction
database. They will keep generating charges if not deleted.