Testing: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
(47 intermediate revisions by 3 users not shown)
Line 1: Line 1:


== troubleshooting steps for connection test ==
== troubleshooting steps for connection test ==
find the problem occurred: (1) local service (2) server to LAN (3) server to WAN
find the problem occurred: (1) local service at the server (localhost) (2) from LAN to server (3) from WAN to server




=== (1) local service ===
=== (1) local service ===
WAN &#9675; ------- &#9675; LAN ------- <span style="color:red">&#9679; localhost</span>
WAN &#9675; -------&gt; &#9675; LAN -------&gt; <span style="color:red">&#9679; server</span>


* testing on localhost if you have the administration permission:
Testing on localhost if you have the administrative permission to manage the server.
** Check if your computer/server Is being assigned the IP Address.
* Check if your computer/server Is being assigned the IP Address.
*** {{Linux}}: (1) Check the IP Address. {{kbd | key = ifconfig}}. (2) Re-assign the IP Address and restart the networking service. {{kbd | key = service network restart}} for CentOS<ref>[http://askubuntu.com/questions/230698/how-to-restart-the-networking-service How to restart the networking service? - Ask Ubuntu]</ref>
** {{Linux}}: (1) Check the IP Address. {{kbd | key = ifconfig}}. (2) Re-assign the IP Address and restart the networking service. {{kbd | key = service network restart}} for CentOS<ref>[http://askubuntu.com/questions/230698/how-to-restart-the-networking-service How to restart the networking service? - Ask Ubuntu]</ref>
*** {{Win}}: Check the IP Address. {{kbd | key = ifconfig/all}} more on [[Network problem]]
** {{Win}}: Check the IP Address. {{kbd | key = ifconfig/all}}  
** Is service alive?
** More on [[Network problem]]
** OS firewall
* Is service alive? Is the port occupied by other process?
*** {{Linux}}  
** {{Linux}}
**** (1) {{kbd | key = iptables -L}} to list all rules<ref>[http://wiki.centos.org/HowTos/Network/IPTables HowTos/Network/IPTables - CentOS Wiki]</ref> (2) rule with lower line-number will override the rule with higherer line-number<ref>[https://fedoraproject.org/wiki/How_to_edit_iptables_rules?rd=User_talk:Rforlot How to edit iptables rules - FedoraProject]</ref>
*** [http://linux.die.net/man/1/nmap nmap] "Network exploration tool and security / port scanner." e.g. {{kbd | key = <nowiki>nmap -p 80,443 ip</nowiki>}}
**** [https://fedoraproject.org/wiki/FirewallD FirewallD] rules ex: {{kbd | key = <nowiki>firewall-cmd --list-all-zones</nowiki>}}<ref>[https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-using-firewalld-on-centos-7 How To Set Up a Firewall Using FirewallD on CentOS 7 | DigitalOcean]</ref>
*** [http://linux.die.net/man/8/ss ss] "utility to investigate sockets" e.g. {{kbd | key = <nowiki>ss -tnlp | grep 80</nowiki>}} or using OR operator<ref>[http://www.thegeekstuff.com/2011/10/grep-or-and-not-operators/ 7 Linux Grep OR, Grep AND, Grep NOT Operator Examples]</ref> {{kbd | key = <nowiki>ss -tnlp | grep '80\|443'</nowiki>}}
**** [http://linux.die.net/man/8/semanage SELinux Policy Management]  e.g.: {{kbd | key = <nowiki>semanage port -l</nowiki>}} to list open ports
*** [http://linuxcommand.org/man_pages/ps1.html ps] List the current processes. Input {{kbd | key = <nowiki>ps -aux | grep "PORT_NUMBER"</nowiki>}} e.g. {{kbd | key = <nowiki>ps -aux | grep 443</nowiki>}}
**** [http://linux.die.net/man/1/nmap nmap] "Network exploration tool and security / port scanner." e.g. {{kbd | key = <nowiki>nmap -p 80,443 ip</nowiki>}}
** {{Win}} Using the software [http://www.nirsoft.net/utils/cports.html CurrPorts] to check the process and port. e.g. Apache will not running if the 80 port was occupied by skype<ref>[http://stackoverflow.com/questions/4705005/how-to-solve-wamp-and-skype-conflict-on-windows-7 How to solve WAMP and Skype conflict on Windows 7? - Stack Overflow]</ref>.
*** {{Win}} [https://technet.microsoft.com/en-us/library/cc754274.aspx?f=255&MSPPError=-2147217396 Windows Firewall with Advanced Security] -> configure firewall rules
* Is the port opened for external users? OS firewall or protected by antivirus software.
** protected by antivirus?
** {{Linux}}
** connect to localhost ex: {{kbd | key= telnet 127.0.0.1 23}} where 23 is the port number where the service running
*** [http://linux.die.net/man/8/iptables iptables]: (1) {{kbd | key = iptables -L}} to list all rules<ref>[http://wiki.centos.org/HowTos/Network/IPTables HowTos/Network/IPTables - CentOS Wiki]</ref> (2) rule with smaller line-number will override the rule with larger line-number<ref>[https://fedoraproject.org/wiki/How_to_edit_iptables_rules?rd=User_talk:Rforlot How to edit iptables rules - FedoraProject]</ref>
*** if the local service is web server, you can also try  {{kbd | key = <nowiki>lynx http://127.0.0.1</nowiki>}} for {{Linux}}
*** [https://fedoraproject.org/wiki/FirewallD FirewallD] rules: (1) {{kbd | key = <nowiki>sudo firewall-cmd --get-default-zone</nowiki>}} return 'public' (2) {{kbd | key = <nowiki>sudo firewall-cmd --list-all --zone=public</nowiki>}}<ref>[https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-using-firewalld-on-centos-7 How To Set Up a Firewall Using FirewallD on CentOS 7 | DigitalOcean]</ref> (3) Allow port with FirewallD
*** [http://linux.die.net/man/8/semanage SELinux Policy Management]: (1) After installed {{kbd | key =policycoreutils-python}}<ref>[http://sharadchhetri.com/2014/10/07/semanage-command-found-centos-7-rhel-7/ semanage command not found on CentOS 7 and RHEL 7]</ref>, input {{kbd | key = <nowiki>semanage port -l</nowiki>}} to list open ports. (2) Allow port with semanage.
** {{Win}} [https://technet.microsoft.com/en-us/library/cc754274.aspx?f=255&MSPPError=-2147217396 Windows Firewall with Advanced Security] -> configure firewall rules
** protected by antivirus software?
* connect to localhost ex: {{kbd | key= telnet 127.0.0.1 23}} where 23 is the port number where the service running
** [https://technet.microsoft.com/en-us/library/cc771275(v=ws.10).aspx Install Telnet Client] on {{Win}}
** if the local service is web server, you can also try  {{kbd | key = <nowiki>lynx http://127.0.0.1</nowiki>}} for {{Linux}}
* double [[Testing#check_the_server.2Fservice_logs | check the server/service logs]]
* double [[Testing#check_the_server.2Fservice_logs | check the server/service logs]]


=== (2) server to LAN ===
=== (2) from LAN to server ===
WAN &#9675; ------- <span style="color:red">&#9679; LAN ------- &#9679; localhost</span>
WAN &#9675; -------&gt; <span style="color:red">&#9679; LAN -------&gt; &#9679; server</span>


* testing on LAN (local network, subnet scope): Is service alive? The different servers between LAN or with the same ip class (ex: 1.2.3.*) may not have the firewall limit.
* testing on LAN (local network, subnet scope): Is service alive? The different servers between LAN or with the same ip class (ex: 1.2.3.*) may not have the firewall limit.
** connect to localhost ex: {{kbd | key= telnet 172.18.0.1 23}} (1) IP start with 172.18... is [http://www.itcom.itd.umich.edu/backbone/umnet/privateIP.html Private IP Network Numbers] (2) where 23 is the port number where the service running
** connect to localhost ex: {{kbd | key= telnet 172.18.0.1 23}} (1) IP start with 172.18... is [http://www.itcom.itd.umich.edu/backbone/umnet/privateIP.html Private IP Network Numbers] (2) where 23 is the port number where the service running
*** if the local service is web server, you can also try {{kbd | key = <nowiki>lynx http://172.18.0.1</nowiki>}} for {{Linux}}
*** If the local service is web server, you can also try to connect the internal ip e.g. {{kbd | key = <nowiki>lynx http://172.18.0.1</nowiki>}} for {{Linux}}
* double [[Testing#check_the_server.2Fservice_logs | check the server/service logs]]
* double [[Testing#check_the_server.2Fservice_logs | check the server/service logs]]


=== (3)  server to WAN ===
=== (3)  from WAN to server ===
<span style="color:red">WAN &#9679; ------- &#9679; LAN ------- &#9679; localhost</span>
<span style="color:red">WAN &#9679; -------&gt; &#9679; LAN -------&gt; &#9679; server</span>


We met the trouble on WAN
We met the trouble on WAN (wide area network). If we do no have the administrative permission, the tests we can do as follows:
* Testing on WAN: [http://downforeveryoneorjustme.com/ Down for everyone or just me?] more on [[Web_Ping#同時從世界各處測試網站連線 | Web Ping]]
* [http://downforeveryoneorjustme.com/ Down for everyone or just me?] more on [[Web_Ping#同時從世界各處測試網站連線 | Web Ping]]
** Switch to different ISP? Is hardware firewall opened?
* Switch to different ISP? Is hardware firewall enabled?
** Is gateway alive?
* Is gateway alive?
** Is DNS alive?
* Is DNS alive?
* (optional) If the firewall rule is IP specified, verify the IP is correct or not from [http://whatismyipaddress.com/ What Is My IP Address?] or web access log.
* Is the external IP correct?
** If the firewall rule is IP specified, verify the IP if correct from [http://whatismyipaddress.com/ What Is My IP Address?] or web access log.
** Query the [http://ipinfo.io/ IP Address Details - ipinfo.io]. e.g. Input the command {{kbd | key = <nowiki>curl ipinfo.io/ip</nowiki>}}<ref>[https://askubuntu.com/questions/95910/command-for-determining-my-public-ip#comment1318649_95910 networking - Command for determining my public IP? - Ask Ubuntu]</ref> for {{Mac}} & {{Linux}}
* Is the port was opened for external users? [http://www.portchecktool.com/ Open Port Check Tool - Port Forwarding Port Check Tool]
* Is institutional/ISP firewall enabled? Contact your MIS. ([https://en.wikipedia.org/wiki/Management_information_system Management information system]) of your company or ISP?


other issue:  
other issue:  
Line 57: Line 67:
* or use the remote website monitoring services: [[Web Ping]]  
* or use the remote website monitoring services: [[Web Ping]]  


telnet  
Using telnet client
* (optional) [https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc771275(v=ws.10) Install Telnet Client | Microsoft Docs] on {{Win}}. [https://medium.com/@blackSource/bring-telnet-back-on-macos-high-sierra-11de98de1544 Bring telnet back on macOS high Sierra – Ayuth Mangmesap (blackSource) – Medium] on {{Mac}}
* telnet ''DOMAIN_or_IP'' ''PORT'' ex: {{kbd | key = telnet the.domain 80}}
* telnet ''DOMAIN_or_IP'' ''PORT'' ex: {{kbd | key = telnet the.domain 80}}
** If connected. The console windows will show the message "Escape character is '^]'. " for {{Linux}}. Or show a blank window for {{Win}} If you want to end the telnet command. You can (1) press {{Kbd plus | key1 = Ctrl | key2 = ]}} and (2) keyin {{Kbd | key = quit}} to end the telnet.
** If connected. The console windows will show the message "Escape character is '^]'. " for {{Linux}}. Or show a blank window for {{Win}} If you want to end the telnet command. You can (1) press {{Kbd plus | key1 = Ctrl | key2 = ]}} and (2) keyin {{Kbd | key = quit}} to end the telnet.
** If failed. It will show the message: "telnet: Unable to connect to remote host: Connection refused"
** If failed. It will show the message: "telnet: Unable to connect to remote host: Connection refused"
curl
* {{kbd | key = curl -v -o /dev/null http://IP:Port}} If failed. It will show the message: "failed: Connection refused"


tools
tools
Line 92: Line 106:


=== browser & device issue ===
=== browser & device issue ===
* browser version: [[Check Browser Compatibility]] & Validation service or [[Validator]]: Check Markup or CSS syntax
* Browser version: [[Check Browser Compatibility]] & Validation service or [[Validator]]: Check Markup or CSS syntax
* multiple screen resolution test: [[CSS_tools#不同螢幕解析度檢視網頁 | 不同螢幕解析度檢視網頁]]
* Multiple screen resolution test: [[CSS_tools#不同螢幕解析度檢視網頁 | 不同螢幕解析度檢視網頁]]
* [[Mobile friendliness tool]]
* [[Mobile friendliness tool]]
* clear browser cache by [http://en.wikipedia.org/wiki/Wikipedia:Bypass_your_cache Bypass your cache] ([http://zh.wikipedia.org/wiki/Help:%E7%BB%95%E8%BF%87%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98 繞過瀏覽器快取])
* Disable all extensions
** client temporary files
* Clear browser cache by [http://en.wikipedia.org/wiki/Wikipedia:Bypass_your_cache Bypass your cache] ([http://zh.wikipedia.org/wiki/Help:%E7%BB%95%E8%BF%87%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98 繞過瀏覽器快取])
* clear server cache ex: [http://www.smarty.net/manual/en/caching.php Smarty Caching]
** Client temporary files
** [https://www.technipages.com/google-chrome-how-to-completely-disable-cache Google Chrome: How to Disable Cache]
* Clear server cache ex: [http://www.smarty.net/manual/en/caching.php Smarty Caching]


==== online IDE ====
==== online IDE ====
* code snippet web-based editor  / communication tools between developers/designers
code snippet web-based editor  / communication tools between developers/designers
** [http://codepad.org/ codepad] {{access | date=2012-10-02}} {{access | date = 2014-10-07}}
* [http://codepad.org/ codepad] {{access | date=2012-10-02}} {{access | date = 2014-10-07}}
** [http://cssdesk.com/ CSSDesk] HTML, CSS {{access | date=2013-02-11}}
* [http://cssdesk.com/ CSSDesk] HTML, CSS {{access | date=2013-02-11}}
** [http://dabblet.com/ The first commented line is your dabblet’s title ✿ dabblet.com]: view the [http://dabblet.com/gist/2779082 sample] of html and css {{access | date = 2012-08-22}}
* [http://dabblet.com/ The first commented line is your dabblet’s title ✿ dabblet.com]: view the [http://dabblet.com/gist/2779082 sample] of html and css {{access | date = 2012-08-22}}
** [http://ideone.com/ Ideone.com] "Online IDE & Debugging Tool >> C/C++, Java, PHP, Python, Perl and 40+ compilers and interpreters"
* [http://ideone.com/ Ideone.com] "Online IDE & Debugging Tool >> C/C++, Java, PHP, Python, Perl and 40+ compilers and interpreters"
** [http://jsbin.com/ JS Bin - Collaborative JavaScript Debugging]: HTML, CSS, Javascript<ref>[http://blog.miniasp.com/post/2013/06/30/Useful-tool-JS-Bin-Collaborative-JavaScript-Debugging.aspx The Will Will Web - 介紹好用工具:JS Bin ( 網站前端工程師的學習利器 )]</ref>
* [http://jsbin.com/ JS Bin - Collaborative JavaScript Debugging]: HTML, CSS, Javascript<ref>[http://blog.miniasp.com/post/2013/06/30/Useful-tool-JS-Bin-Collaborative-JavaScript-Debugging.aspx The Will Will Web - 介紹好用工具:JS Bin ( 網站前端工程師的學習利器 )]</ref>
** [http://jsfiddle.net/ jsFiddle] {{access | date = 2014-10-07}}
* [http://jsfiddle.net/ jsFiddle] {{access | date = 2014-10-07}}
** [http://plnkr.co/ Plunker] {{access | date = 2014-10-07}}
* [http://plnkr.co/ Plunker] support JS, Angular, React, AngularJS & Preact {{access | date = 2018-08-08}}
* database testing
* [https://implode.io/ Implode.io] for PHP {{access | date = 2018-03-15}}
** [http://ideone.com/ Ideone.com] support SQL {{exclaim}} not support REGEXP function {{access | date = 2015-03-09}}
* [https://rextester.com/ Rextester] {{access | date = 2019-01-13}}
** [http://sqlfiddle.com/ SQL fiddle] support MySQL, MS SQL server, Oracle, PostgreSQL, SQLite ...  {{exclaim}} data may not showed in couple days {{access | date = 2015-03-09}}
* [https://codesandbox.io/ CodeSandbox: Online Code Editor Tailored for Web Application Development] Support Angular, React, Vanilla, Vue, Gatsby, Next.js, Node, Nuxt.js, Unibit, React + TS and Vanilla + TS
 
database testing
* [http://ideone.com/ Ideone.com] support SQL {{exclaim}} not support REGEXP function {{access | date = 2015-03-09}}
* [http://sqlfiddle.com/ SQL fiddle] support MySQL, MS SQL server, Oracle, PostgreSQL, SQLite ...  {{exclaim}} data may not showed in couple days {{access | date = 2015-03-09}}


* Save or share source codes
Save or share source codes
** [http://pastie.org/ Pastie] with syntax highlighting
* [http://pastie.org/ Pastie] with syntax highlighting
** [http://pastebin.com/ Pastebin.com - #1 paste tool since 2002!]
* [http://pastebin.com/ Pastebin.com - #1 paste tool since 2002!]
** [http://tny.cz/ Tinypaste - The easiest way to host your text]
* [http://tny.cz/ Tinypaste - The easiest way to host your text]


=== browser plug-ins issue ===
=== browser plug-ins issue ===
Line 134: Line 154:
=== domain name issue ===
=== domain name issue ===
Modify the following files if you want to test the domain name before the mapping of domain name and ip was changed really
Modify the following files if you want to test the domain name before the mapping of domain name and ip was changed really
* C:\WINDOWS\system32\drivers\etc\hosts for {{win}} XP, Win7<ref>[http://tommy.ironman.tw/windows-7-vista-hosts-error/ Azan 黃贊臣 » 在Windows 7 或 Vista 中修改hosts檔的方法]</ref>
* C:\WINDOWS\system32\drivers\etc\hosts for {{win}} XP, Win7<ref>[http://tommy.ironman.tw/windows-7-vista-hosts-error/ Azan 黃贊臣 » 在Windows 7 或 Vista 中修改hosts檔的方法]</ref>, Win 10 & Windows Server 2008 R2 Standard
* C:\WINNT\system32\drivers\etc\hosts for Windows 2003 server
* On Windows 2003 server: edit the file located at {{kbd | key=<nowiki>C:\WINNT\system32\drivers\etc\hosts</nowiki>}}
* {{kbd | key=<nowiki>/etc/hosts</nowiki>}} for {{Linux}}
* On {{Linux}}, input the command {{kbd | key=<nowiki>sudo vi /etc/hosts</nowiki>}}
<pre>
<pre>
127.0.0.1      localhost
127.0.0.1      localhost
# ip            domain.com
# ip            domain.com
</pre>
</pre>
* On {{Mac}}, input the command {{kbd | key=<nowiki>sudo vi /private/etc/hosts</nowiki>}} <ref>[https://www.tekrevue.com/tip/edit-hosts-file-mac-os-x/ How to Edit the Hosts File on Mac OS X - TekRevue]</ref>


Clear the DNS cache
* [http://www.noip.com/support/knowledgebase/how-do-i-flush-my-windows-dns-cache/ How Do I Clear My DNS Cache on Windows? | Support | No-IP] for {{Win}}
* [https://support.apple.com/en-us/HT202516 Reset the DNS cache in OS X - Apple Support] for {{Mac}}


more on [[Web_Ping#DNS.E6.AA.A2.E6.9F.A5 | DNS checking]]
more on [[Web_Ping#DNS.E6.AA.A2.E6.9F.A5 | DNS checking]]
Line 195: Line 220:
==== MySQL ====
==== MySQL ====
[http://dev.mysql.com/doc/refman/5.1/en/server-logs.html MySQL Server Logs]:  
[http://dev.mysql.com/doc/refman/5.1/en/server-logs.html MySQL Server Logs]:  
* step1: enable logging /var/log/mysql.log (location was set up in the configuration file /etc/my.cnf or my.ini) <ref>[http://blog.longwin.com.tw/2005/10/mysql_query_slow_find/ 找出 MySQL 哪些 Query 速度較慢 | Tsung's Blog]</ref>
* step1: verify the system variable<ref>[https://dev.mysql.com/doc/refman/5.7/en/show-variables.html MySQL :: MySQL 5.7 Reference Manual :: 13.7.5.39 SHOW VARIABLES Syntax]</ref>
<pre>
mysql> SHOW VARIABLES LIKE '%general_log%';
mysql> SHOW GLOBAL VARIABLES LIKE '%general_log%';
</pre>
* step2: enable logging /var/log/mysql.log (location was set up in the configuration file /etc/my.cnf or my.ini) <ref>[http://blog.longwin.com.tw/2005/10/mysql_query_slow_find/ 找出 MySQL 哪些 Query 速度較慢 | Tsung's Blog]</ref>
<pre>
<pre>
[mysqld]  
[mysqld]  
Line 209: Line 239:
</pre>
</pre>


* step2: restart MySQL service
* step3: restart MySQL service
 


==== Microsoft SQL Server ====
==== Microsoft SQL Server ====
Line 253: Line 282:
related terms
related terms
* functional testing
* functional testing
templates
* [[Bug report template]]


== references ==
== references ==
<references/>
<references/>


further reading
* [http://help.trello.com/article/736-troubleshooting-browser-issues-with-trello Troubleshooting browser issues with Trello - Trello Help] {{access | date = 2017-03-28}}
* [https://asana.com/guide/help/faq/connectivity Supported browsers and troubleshooting steps for Asana | Product guide · Asana] {{access | date = 2017-03-28}}


{{Template:Build a website}}
{{Template:Build a website}}

Revision as of 19:58, 15 September 2019

troubleshooting steps for connection test

find the problem occurred: (1) local service at the server (localhost) (2) from LAN to server (3) from WAN to server


(1) local service

WAN ○ -------> ○ LAN -------> ● server

Testing on localhost if you have the administrative permission to manage the server.

  • Check if your computer/server Is being assigned the IP Address.
    • Linux Os linux.png : (1) Check the IP Address. ifconfig. (2) Re-assign the IP Address and restart the networking service. service network restart for CentOS[1]
    • Win Os windows.png : Check the IP Address. ifconfig/all
    • More on Network problem
  • Is service alive? Is the port occupied by other process?
    • Linux Os linux.png
      • nmap "Network exploration tool and security / port scanner." e.g. nmap -p 80,443 ip
      • ss "utility to investigate sockets" e.g. ss -tnlp | grep 80 or using OR operator[2] ss -tnlp | grep '80\|443'
      • ps List the current processes. Input ps -aux | grep "PORT_NUMBER" e.g. ps -aux | grep 443
    • Win Os windows.png Using the software CurrPorts to check the process and port. e.g. Apache will not running if the 80 port was occupied by skype[3].
  • Is the port opened for external users? OS firewall or protected by antivirus software.
    • Linux Os linux.png
      • iptables: (1) iptables -L to list all rules[4] (2) rule with smaller line-number will override the rule with larger line-number[5]
      • FirewallD rules: (1) sudo firewall-cmd --get-default-zone return 'public' (2) sudo firewall-cmd --list-all --zone=public[6] (3) Allow port with FirewallD
      • SELinux Policy Management: (1) After installed policycoreutils-python[7], input semanage port -l to list open ports. (2) Allow port with semanage.
    • Win Os windows.png Windows Firewall with Advanced Security -> configure firewall rules
    • protected by antivirus software?
  • connect to localhost ex: telnet 127.0.0.1 23 where 23 is the port number where the service running
    • Install Telnet Client on Win Os windows.png
    • if the local service is web server, you can also try lynx http://127.0.0.1 for Linux Os linux.png
  • double check the server/service logs

(2) from LAN to server

WAN ○ -------> ● LAN -------> ● server

  • testing on LAN (local network, subnet scope): Is service alive? The different servers between LAN or with the same ip class (ex: 1.2.3.*) may not have the firewall limit.
    • connect to localhost ex: telnet 172.18.0.1 23 (1) IP start with 172.18... is Private IP Network Numbers (2) where 23 is the port number where the service running
      • If the local service is web server, you can also try to connect the internal ip e.g. lynx http://172.18.0.1 for Linux Os linux.png
  • double check the server/service logs

(3) from WAN to server

WAN ● -------> ● LAN -------> ● server

We met the trouble on WAN (wide area network). If we do no have the administrative permission, the tests we can do as follows:

other issue:

connection test

case 1: Access the server from outside network ex: WAN

Where are you? Access the server from outside network ex: Wide Area Network (WAN) or Local Area Network (LAN)

open the browser from outside network ex: Wide Area Network (WAN) or Local Area Network (LAN)

  • and type the address: http://the.domain Icon_exclaim.gif Note: Not Private network / Private IP address
  • or use the remote website monitoring services: Web Ping

Using telnet client

curl

  • curl -v -o /dev/null http://IP:Port If failed. It will show the message: "failed: Connection refused"

tools

  1. Check server: Check host - online website monitoring, Check IP "checks the possibility of a TCP connection to host's specified port from different locations around the world." quoted from website. [Last visited: 2015-08-02]

case 2: Access the server from inside ex: localhost or Local LAN

If you has permission to log in the server via SSH or Remote desktop service.

  • (1)open the browser, (2)type the address: http://127.0.0.1
  • Open Port Check Tool: Using browser to check the specified port of local machine from canyouseeme.org. Icon_exclaim.gif it may returned wrong result if the server hosted with shared external IP
  • Linux command:
    1. (optional if lynx was not installed) yum install lynx for CentOS / sudo apt-get install lynx for Ubuntu[9]
    2. lynx http://127.0.0.1 [10] for Linux Os linux.png

telnet

  1. telnet 127.0.0.1 80
  2. (after telnet-ed the web 80 port, key in) get + SPACE
  3. more on HTTP Check Port 80 with the Telnet Command

netstat ex: find MySQL 3306 port

  1. netstat -a | find "3306" (note: require the double quote symbol, not single quote symbol) for Win Os windows.png [11] or netstat -npl | grep 3306[12] for Linux Os linux.png
  2. more on List open ports and listening services

tools

  1. Good.gif CurrPorts: Monitoring TCP/IP network connections on Windows
  2. PFPortCheck Program: check TCP/UDP port from localhost(where you installed the program) to portforward.com
  3. TCPView for Windows


user client node

browser & device issue

online IDE

code snippet web-based editor / communication tools between developers/designers

database testing

  • Ideone.com support SQL Icon_exclaim.gif not support REGEXP function [Last visited: 2015-03-09]
  • SQL fiddle support MySQL, MS SQL server, Oracle, PostgreSQL, SQLite ... Icon_exclaim.gif data may not showed in couple days [Last visited: 2015-03-09]

Save or share source codes

browser plug-ins issue

e-mail testing issue

Email testing

monitoring the status or changes of files or registry

monitoring or generating the HTTP request sent to the server

HTTP request and response data tool

domain name issue

Modify the following files if you want to test the domain name before the mapping of domain name and ip was changed really

  • C:\WINDOWS\system32\drivers\etc\hosts for Win Os windows.png XP, Win7[14], Win 10 & Windows Server 2008 R2 Standard
  • On Windows 2003 server: edit the file located at C:\WINNT\system32\drivers\etc\hosts
  • On Linux Os linux.png , input the command sudo vi /etc/hosts
127.0.0.1       localhost
# ip            domain.com
  • On Mac icon_os_mac.png , input the command sudo vi /private/etc/hosts [15]


Clear the DNS cache

more on DNS checking

handling form data

before submit the form data

  • (1)Use the Web Developer plugin for Firefox browser_firefox.png and (2)Menu -> Forms -> Display form details

after submit the form data


login issues into different accounts

If you need to clear the cookie frequently for the testing account issue

  • Using the privacy browsing for Firefox browser_firefox.png & Chrome Browser chrome.png . Each time you turning on the privacy browsing, the logged status and cookie will not saved.[16]
  • Manually clear cookie and temporary files of browser

file upload

excel format compatibility

Using Microsoft Excel Viewer to check the excel format compatibility. Icon_exclaim.gif It's not save to check the excel file only by using the old version of Excel.


database issue

  • SQL
    • SQL Fiddle support MySQL, MS SQL, Oracle, PosgreSQL, SQLite ... Good.gif

server environment

Testing server environment

local server node (if you has permission to log in the server via SSH or Remote desktop service)

check the server/service logs

OS

Microsoft Windows

Web server

Apache

Apache HTTP server log: /etc/httpd/logs (location was set up in the configuration file /etc/httpd/conf/httpd.conf)

  • access.log
  • error.log - record when the apache service restarted/stopped

Using grep command to search the logs: grep -ir "string to search" /path/to/directory. More on Search text in files

IIS

Microsoft Internet Information Services (IIS) log (記錄檔)[17]

  • C:\WINDOWS\system32\LogFiles\

Database server

MySQL

MySQL Server Logs:

  • step1: verify the system variable[18]
mysql> SHOW VARIABLES LIKE '%general_log%';
mysql> SHOW GLOBAL VARIABLES LIKE '%general_log%';
  • step2: enable logging /var/log/mysql.log (location was set up in the configuration file /etc/my.cnf or my.ini) [19]
[mysqld] 
## includes all SQL queries/commands
# general_log = 1
# general_log_file="general_log_file.log"
log-error=/var/log/mysql/error.log
log-slow-queries = /var/log/mysql/mysql-slow.log
#another syntax
#slow_query_log_file = mysql-slow.log
long_query_time = 1
log-long-format
  • step3: restart MySQL service

Microsoft SQL Server

Other

PHP

PHP_errors#logging

Java

System.out.println("Boston, We Have A Problem" + variable); //output to Tomcat consile
out.println("Boston, We Have A Problem" + variable); //output to JSP webpage

or using NetBeans IDE - Debugger and Profiler to setup the breakpoints.

console command

//write the console output to the file
command > log.txt

//append to the same file
command >> log.txt

find match string

Owl icon.jpg If the message text or code snippets was not found in the plain text files, it may stored in the database.

related topic

related terms

  • functional testing

templates

references

further reading


Web site design and development process