AI QA

AI QA Engineer बन्नको लागि तपाईंलाई traditional QA skills को साथसाथै AI/ML testing सम्बन्धी केही विशेष ज्ञान चाहिन्छ। यहाँ fundamental knowledge Nepali-English mix मा दिइएको छ:


🔰 1. Strong QA Foundation (मूल Testing ज्ञान)

  • Manual Testing: Test cases लेख्ने, defects रिपोर्ट गर्ने, test scenarios तयार गर्ने।
  • Automation Testing: Selenium, Playwright, TestNG, JUnit जस्ता tools प्रयोग गरेर repetitive tasks automation गर्न सक्ने।
  • API Testing: Postman वा REST Assured प्रयोग गरेर API endpoints को functional validation।

🧠 2. Basic Programming Skills

  • कम्तीमा एक programming language राम्रोसँग जान्न आवश्यक छ (Python या Java recommended for AI testing)।
  • Python को knowledge AI tools संग integration मा helpful हुन्छ।

✅ Example:

python

CopyEdit

def is_even(n):

    return n % 2 == 0


🤖 3. Understanding of AI/ML Concepts

  • Supervised vs Unsupervised Learning
  • Model Accuracy, Precision, Recall, F1 Score
  • Confusion Matrix

🗣 Example:
Nepali मा बुझ्दा, “Supervised Learning भनेको शिक्षकले direction दिने प्रकार हो, जसमा input-output label दिइन्छ। Unsupervised मा direction हुँदैन, model ले pattern आफैं सिक्छ।”


📊 4. AI/ML Model Testing Skills

  • Data Validation: Model training मा प्रयोग हुने data राम्रो हो कि होइन जाँच गर्ने।
  • Model Performance Testing: Accuracy, bias, fairness check गर्ने।
  • Black Box Testing: Model ले दिने output सही छ कि छैन, logic नहेरी test गर्ने।

⚙️ 5. Tools & Frameworks

Area Tools
ML Platforms TensorFlow, PyTorch, Scikit-learn
Testing Tools Pytest, Robot Framework
Data Tools Pandas, NumPy
Reporting Allure, Jupyter Notebooks

🔐 6. Ethical AI Testing Knowledge

  • AI ले bias decision नगरोस् भन्ने कुरा validate गर्ने।
  • Fairness, transparency र accountability को test गर्न सक्ने।

📌 Example:

यदि loan approval model ले कुनै gender लाई बारम्बार reject गर्छ भने त्यो bias हो – AI QA को काम त्यो detect गर्ने हो।


🧪 7. CI/CD & MLOps Knowledge (Optional but Bonus)

  • Jenkins, GitHub Actions, Docker, MLflow, Kubeflow जस्ता tools जान्नु helpful हुन्छ।
  • Model deployment pipeline मा QA integration गर्न सकिन्छ।

✅ Summary (Checklist Style)

  • Manual Testing
  • Automation Testing (Python preferred)
  • Basic ML Concepts
  • Model Testing Methods
  • AI Testing Tools
  • API Testing
  • Reporting Knowledge
  • MLOps Tools (Bonus)

महत्वपूर्ण छ, विशेष गरेर API testing, cloud-based model deployment, र data transmission validation जस्ता कामहरूमा।


🧠 Basic Computer Networking Knowledge for AI QA Engineers (Nepali-English Mix)

🔹 1. What is Computer Network?

📘 English: A computer network is a system where multiple devices (computers, servers, IoT) communicate with each other to share data.
📗 Nepali: Computer network भनेको devices बीच data आदान-प्रदान गर्नको लागि बनाइएको जडान प्रणाली हो।


🔹 2. IP Address र Subnet Mask

  • IP Address: हर एक device लाई network मा unique चिनाउने address हो।
    🧾 Example: 192.168.1.1
  • Subnet Mask: कुन भाग network address हो र कुन भाग host address हो भनेर छुट्याउँछ।

🗣 Nepali Insight: IP Address मानौं तपाईंको घरको address हो, र Subnet भनेको कुन टोलमा पर्छ भनेर छुट्याउने नियम हो।


🔹 3. MAC Address

  • MAC = Media Access Control
  • Hardware को permanent address हो, जुन change गर्न सकिँदैन।

Use in QA: Tools like Wireshark ले packet tracing मा MAC address देखाउँछ।


🔹 4. DNS – Domain Name System

📘 DNS converts domain names (like google.com) into IP addresses.

🗣 Nepali Simplified: तपाईंले google.com लेख्दा computer ले त्यसको IP address lookup गर्छ DNS मार्फत।


🔹 5. DHCP – Dynamic Host Configuration Protocol

  • यो protocol ले network मा connected devices लाई automatically IP address assign गर्छ।

🎯 Why important for QA:

  • Testing network-dependent applications (e.g., cloud-based APIs) मा IP conflicts detect गर्न सकिन्छ।

🔹 6. Ping र Traceroute

  • Ping: Check if a device is reachable or not (used to test connectivity).
  • Traceroute: Shows the path/hops that data takes to reach the target.

✅ Example:

bash

CopyEdit

ping google.com

tracert google.com

🗣 Nepali मा: Ping ले जाँच गर्छ कि कुन computer अनलाइन छ कि छैन। Traceroute ले कुन-कुन बाटो भएर पुगेको हो देखाउँछ।


🔹 7. Firewall

  • Network मा के traffic आउन र जान पाउँछ भन्ने कुराको नियंत्रण गर्ने security layer हो।

🎯 AI QA View: Firewall rules ले API calls fail गराउन सक्छ — यसलाई troubleshoot गर्न जान्नु जरूरी हुन्छ।


🔹 8. VPN – Virtual Private Network

  • Secure way to connect to a network remotely.
  • Mostly used in enterprise QA to test apps in internal environments.

🧠 Example: Testing internal API through VPN tunnel.


🔹 9. HTTP vs HTTPS

Protocol Security Port
HTTP Not Secure 80
HTTPS Encrypted (SSL/TLS) 443

📌 QA मा HTTPS testing गर्दा SSL certificate validation अनिवार्य हुन्छ।


🔹 10. Ports & Protocols

Port Protocol Use
22 SSH Secure terminal
80 HTTP Web
443 HTTPS Secure Web
53 DNS Domain Resolution
21 FTP File Transfer

✅ Summary for AI QA

Topic Use in AI QA
IP Address API / server config test
DNS Endpoint testing
VPN Internal test environment
Firewall API call failure troubleshooting
Ping/Traceroute Network reachability
HTTPS Security validation
Ports API & DB communication

✅ Top 10 Main Topics for AI QA Engineer (Recommended Sequence)

1️⃣ Computer Networking Basics

Already started — base-level knowledge for API, server, and model communication.


2️⃣ Python Programming for QA

  • Why: Python is the most used language in AI/ML + testing tools.
  • Includes: Syntax, functions, data types, OOP, file handling, exception handling.

3️⃣ Manual Testing + STLC Knowledge

  • Test case, test plan, defect life cycle, test techniques.
  • Use case: Validate AI model behavior manually before automating.

4️⃣ Automation Testing (Selenium + Python/Java)

  • Create regression tests for ML model UI/UX or platforms like ML dashboards.
  • Bonus: Combine with PyTest or unittest.

5️⃣ API Testing (REST API, JSON, Postman, REST Assured)

  • Check AI model deployment endpoints, authentication, responses.
  • Methods: GET, POST, PUT, DELETE

6️⃣ Machine Learning Fundamentals

  • Types of ML: Supervised, Unsupervised, Reinforcement
  • Key metrics: Accuracy, Precision, Recall, F1-Score, Confusion Matrix
  • Algorithms: Decision Tree, SVM, KNN, etc.

7️⃣ AI Model Testing Techniques

  • Black-box model validation
  • Fairness, bias detection
  • Data validation and quality check
  • Adversarial testing

8️⃣ **MLOps + Model Deployment


✅ Top 10 Computer Networking Topics for AI QA Engineers

1️⃣ IP Addressing (IPv4, IPv6)

  • Use: API server reachability test, cloud host testing
  • Nepali: Network मा कुन device कहाँ छ भनेर चिनाउने तरीका।

2️⃣ Subnetting & CIDR

  • Use: Cloud infrastructure testing, secure model deployment zones
  • Nepali: कुन subnet मा कुन resource पर्छ भनेर छुट्याउने उपाय।

3️⃣ OSI Model vs TCP/IP Model

  • Layers: Application, Transport, Network, etc.
  • Use: Protocol-level issue troubleshooting
  • Nepali: Data कसरी layer-by-layer भएर यात्रा गर्छ भन्ने structure।

4️⃣ TCP vs UDP Protocol

  • Use: Model serving (e.g., gRPC uses HTTP/2), real-time inference testing
  • Nepali: TCP मा connection हुन्छ, UDP मा छैन — speed vs reliability।

5️⃣ Ports and Protocols

Port Use
80/443 HTTP/HTTPS
22 SSH
53 DNS
  • Use: API testing, firewall debugging
  • Nepali: कुन communication कुन port बाट भइरहेको छ बुझ्न सहयोग गर्छ।

6️⃣ DNS (Domain Name System)

  • Converts domain to IP
  • Use: Test domain resolution failures in model endpoint
  • Nepali: mlserver.company.com लाई IP मा बदली model access गर्न।

7️⃣ Firewalls and NAT (Network Address Translation)

  • Use: Model unreachable errors troubleshooting
  • Nepali: कुन traffic allow हुन्छ, कुन रोकिन्छ भनेर firewall ले decide गर्छ।

8️⃣ VPN & Remote Access

  • Use: Secure internal model testing
  • Nepali: बाहिरबाट सुरक्षित तरिकाले model serve भएको network मा connection गर्न।

9️⃣ Ping, Traceroute, nslookup, netstat

  • Use: Basic connectivity checks, DNS lookup, open port test
  • Nepali: कुन बाटो भएर traffic गएको छ भनेर troubleshoot गर्न helpful।

🔟 HTTP, HTTPS, SSL/TLS

  • Use: Secure API test, certificate validation
  • Nepali: HTTPS मा encrypted traffic हुन्छ — AI model serve गर्दा important हुन्छ।

📌 Bonus Topics:

  • Load Balancer (for AI model scaling)
  • Proxy Server (used in model routing)
  • IP Whitelisting & Access Control

✅ Top 10 Computer Networking Topics (QA & AI Testing Focused)

1. IP Addressing (IPv4/IPv6)

Helps identify and test server locations. In API or ML model testing, you often test endpoints like 192.168.1.10. If the IP is misconfigured, deployment fails.

2. Subnetting & CIDR

Used for segmenting networks in cloud environments. QA engineers may validate if models are accessible only within certain IP blocks.

3. OSI vs TCP/IP Model

Understanding layers helps in debugging connectivity issues:

  • Layer 7 (Application): API, UI
  • Layer 4 (Transport): TCP/UDP test
    AI model down? Layer-wise diagnosis helps.

4. TCP vs UDP

TCP ensures reliable delivery (used in API, model endpoints). UDP is fast but unreliable (e.g., real-time data streaming in AI testing).

5. Common Ports & Protocols

  • HTTP (80), HTTPS (443), SSH (22), DNS (53)
    As a QA, testing whether these ports are open for inbound/outbound API or model traffic is crucial.

6. DNS Resolution

Domain name to IP resolution is key for cloud-deployed AI models. DNS misconfiguration means model.api.com won’t resolve — QA must validate it.

7. Firewall & NAT

Firewalls can block model-serving APIs. If a test fails to hit the endpoint, NAT or firewall rules might be the issue.

8. VPN & Remote Access

QA often tests internal-only AI services via VPN. Knowing VPN setups and debugging remote access is important.

9. Ping, Traceroute, nslookup, netstat

Used to verify:

  • Server is up (ping)
  • Route to server (traceroute)
  • DNS resolution (nslookup)
  • Port binding (netstat)

10. HTTP/HTTPS, SSL/TLS Certificates

Most AI APIs run over HTTPS. As QA, you’ll validate:

  • Certificate is valid
  • HTTPS responses are secure
  • SSL errors don’t break automation scripts

✅ 1. IP Addressing (IPv4/IPv6)

हर device लाई network भित्र चिनाउनको लागि unique address चाहिन्छ — त्यसलाई IP Address भनिन्छ।
IPv4 (जस्तै: 192.168.1.1) अहिले धेरै प्रयोग हुन्छ, IPv6 future मा scalable network को लागि प्रयोग हुन्छ।
AI QA मा endpoint testing गर्दा IP mismatch भएमा connectivity fail हुन्छ।


✅ 2. Subnetting & CIDR

Subnetting भनेको network लाई logically टुक्र्याउने तरीका हो। CIDR (/24, /16 जस्ता notation) ले subnet को size बताउँछ।
Cloud मा deployed AI model हरु specific subnet मा राखिन्छन्, QA ले access permission test गर्नुपर्छ।


📘 Topic 1: What is a Computer Network?

🔹 Definition

A computer network is a group of interconnected devices (computers, servers, routers) that can communicate and share data with each other.

📖 Nepali Explanation:
Computer network भनेको यस्तो system हो जहाँ धेरै computer वा device हरु आपसमा जडित हुन्छन् र data आदान-प्रदान गर्न सक्छन्।
जस्तै – तपाईँको computer बाट API request गर्दा त्यो request network हुँदै model server मा पुग्छ।


🔹 Types of Networks

Type Description Example
LAN (Local Area Network) छोटो दूरीको लागि (e.g., home, office) Office Wi-Fi
WAN (Wide Area Network) धेरै ठाँउ जोड्न (e.g., Internet) World Wide Web
MAN (Metropolitan Area Network) शहरभित्रको network ISP network
PAN (Personal Area Network) सानो private devices को जडान Bluetooth, Hotspot

🧠 QA Use Case:
यदि AI model internal LAN मा छ भने, VPN बिना बाहिरबाट access गर्न मिल्दैन। त्यसैले network type बुझ्नु जरुरी हुन्छ।


🔹 Components of a Network

Component Role
Router Device हरुलाई एक अर्कासँग जोड्ने
Switch Multiple devices को बीच data forwarding
Modem Internet access को लागि signal conversion
NIC (Network Interface Card) हर एक device मा network जोड्न Interface

📌 Real Example:
तपाईंको API test fail भयो भने check गर्नुहोस् – model host भएको server लाई ping गर्न सकिन्छ कि छैन, router बाट सही route पाइरहेको छ कि छैन।


🔹 Basic Communication Concepts

  • Client-Server Model: Client ले request गर्छ, server ले response दिन्छ।

QA मा तपाईँको API tester client हुन्छ, र AI model host गरिएको server response provider।

  • Peer-to-Peer (P2P): सबैले एक अर्कालाई direct serve गर्छन्।

कम use हुने model deployment मा।


🔹 Common Use in AI QA Testing

Scenario How Networking Applies
API Testing Request from client (Postman, Script) to model endpoint
Model Unreachable Could be firewall, wrong IP, DNS issue
Internal Model Access Needs VPN, NAT rule, subnet configuration

📘 Topic 2: IP Addressing (IPv4 and IPv6)

🔹 What is an IP Address?

An IP address (Internet Protocol address) is a unique identifier assigned to each device on a network that uses the Internet Protocol for communication.

📖 Nepali Explanation:
IP Address भनेको तपाईँको device लाई network भित्र पहिचान गर्नको लागि दिइने नम्बर हो। जस्तै, तपाईंको घरको ठेगाना जस्तै — post पठाउँदा address चाहिन्छ, त्यसैगरी डेटा पठाउँदा IP address चाहिन्छ।


🔹 Types of IP Addresses

Type Use Example
IPv4 Widely used 192.168.0.1
IPv6 Newer, more address space 2001:0db8:85a3::8a2e:0370:7334

📌 IPv4: 32-bit address → 4 numbers separated by dots
📌 IPv6: 128-bit address → long hexadecimal format

🧠 Why QA Needs It?
AI QA Engineers often test whether a deployed model is reachable at its endpoint. That endpoint will either be a domain name (resolved via DNS) or a direct IP.


🔹 Private vs Public IP

Type Scope Example
Private IP Internal network only 192.168.x.x, 10.x.x.x
Public IP Accessible over the Internet 104.26.10.78

📖 Nepali Insight:
Private IP ले तपाईंको घरभित्रको जडान represent गर्छ, जबकि public IP ले बाहिरी world बाट तपाईंलाई access गर्न दिने IP हो।

🔐 QA मा खासगरी cloud मा deployed model ले कुन IP मा response दिइरहेको छ, त्यो जानकारी आवश्यक हुन्छ।


🔹 Static vs Dynamic IP

  • Static IP: Fixed address (e.g., API server hosting)
  • Dynamic IP: Changes over time (usually assigned by DHCP)

🧠 Example:
Cloud मा model serve गर्दा Static IP चाहिन्छ, ताकि automation test हरु same IP मा request पठाउन सकून्।


🔹 Common IP Ranges (for QA & Dev)

Range Use
127.0.0.1 Localhost (your own machine)
192.168.x.x LAN (internal network)
10.x.x.x Private cloud/internal use
8.8.8.8 Google DNS

📌 In API tests, you often ping 127.0.0.1 or test ping model-server.local.


🔹 Practical AI QA Use Case

Scenario: You are testing an ML model endpoint —

bash

CopyEdit

curl http://192.168.0.12:5000/predict

✅ If it fails:

  • Check IP is correct
  • Ensure it’s reachable (ping test)
  • Verify firewall isn’t blocking it
  • Confirm it’s public or you’re on VPN for private IP

✅ Quick Summary

Key Concept Explanation
IP Address Device identifier in a network
IPv4 Most common, 32-bit
IPv6 Newer, 128-bit
Private IP Used within LAN
Public IP Exposed to Internet
Static IP Fixed address (used in testing)
Dynamic IP Changes via DHCP

📘 Topic 3: Subnetting & CIDR (Classless Inter-Domain Routing)


🔹 What is Subnetting?

Subnetting is the process of dividing a large network into smaller logical networks (called subnets) to improve performance, security, and manageability.

📖 Nepali Explanation:
Subnetting भनेको एउटै ठूलो network लाई साना–साना logical भागहरूमा विभाजन गर्नु हो। जस्तै, एउटा कम्पनीको मुख्य network लाई अलग-अलग department अनुसार subnet मा बाँड्ने।

🧠 Example:
Your model servers are on 192.168.1.0/24 and internal tools are on 192.168.2.0/24. Firewall rules may only allow API access within one subnet.


🔹 Benefits of Subnetting for QA

Benefit QA Context
Improved isolation Only model subnet gets load testing traffic
Access control Prevent unauthorized service hits
Better organization Grouping resources logically (e.g., model servers vs DB servers)

🔹 Subnet Mask

A subnet mask determines which part of an IP address identifies the network and which part identifies the host.

IP Address Subnet Mask Meaning
192.168.1.100 255.255.255.0 Network: 192.168.1.0, Host: last octet

📖 Nepali Viewpoint:
Subnet Mask ले भन्न सक्छ कि कुन भाग network को हो र कुन भाग device को हो।


🔹 CIDR Notation (Classless Inter-Domain Routing)

CIDR uses a “slash” (/) followed by the number of bits used for the network portion.

CIDR Subnet Mask Hosts
/24 255.255.255.0 254 hosts
/16 255.255.0.0 65,534 hosts
/30 255.255.255.252 2 hosts (point-to-point)

🧠 QA Example:
If your cloud provider gives you 10.0.0.0/16, you can create multiple subnets like:

  • 10.0.1.0/24 → QA Staging model
  • 10.0.2.0/24 → Production model

🔹 How Subnetting Affects Testing

Situation QA Relevance
Model fails API call Maybe test script is outside allowed subnet
CI/CD doesn’t trigger Jenkins agent IP not whitelisted
VPN not connecting VPN gateway may allow only /24 subnet

📌 Pro Tip: Always check your test environment’s subnet range and whether your QA tool (Postman, PyTest script, etc.) is inside the allowed network.


🔹 Command-Line Check (Example)

bash

CopyEdit

ipconfig       # Windows

ifconfig       # Linux/Mac

Shows IP, subnet mask, and gateway info.


✅ Quick Summary

Term Meaning
Subnet Smaller logical part of a network
Subnet Mask Defines network vs host portion
CIDR Slash notation for subnetting (/24, /16)
QA Use Model access control, network isolation, firewall settings

📘 Topic 4: OSI Model vs TCP/IP Model


🔹 What is the OSI Model?

The OSI (Open Systems Interconnection) model is a conceptual framework used to understand how data travels from one device to another in a network. It has 7 layers, each responsible for a specific function.

📖 Nepali Summary:
OSI Model एउटा guideline हो जसले network communication लाई 7 वटा तहमा विभाजन गर्छ, जसबाट हरेक layer ले खास काम गर्छ — जस्तै email पठाउँदा कुन-कुन process भएर अर्को user सम्म पुग्छ भनेर बुझ्न यो model प्रयोग हुन्छ।


🔹 The 7 Layers of OSI Model

Layer No. Name Function
7 Application Interface for user (e.g., browser, Postman)
6 Presentation Data formatting, encryption/decryption
5 Session Establish/maintain connections
4 Transport Reliable delivery (TCP), segmentation
3 Network IP addressing, routing (e.g., traceroute)
2 Data Link MAC addressing, switching
1 Physical Physical medium (cable, WiFi)

🧠 Example:
Postman बाट पठाइएको request एकैचोटि सबै layer बाट गुज्रन्छ – Top to Bottom।


🔹 What is the TCP/IP Model?

TCP/IP (Transmission Control Protocol / Internet Protocol) model is a simplified, practical version of OSI model, used in real-world networking. It has 4 layers:

Layer No. Name Maps to OSI Layer
4 Application OSI Layers 7, 6, 5
3 Transport OSI Layer 4
2 Internet OSI Layer 3
1 Network Access OSI Layers 2, 1

📖 Nepali Insight:
TCP/IP model वास्तविक network मा चल्ने protocol हरु (TCP, IP) को आधारमा बनेको छ। त्यसैले यो practical implementation हो, जबकि OSI theoretical model हो।


🔹 Real-Time QA Example

📌 You send a request to:

arduino

CopyEdit

https://ml-api.example.com/predict

🔽 OSI Flow:

  • Application (7): Your test tool creates HTTP request
  • Transport (4): TCP ensures request gets delivered
  • Network (3): IP address resolves and routes the packet
  • Data Link + Physical: Device → Router → Internet

📌 If model fails to respond:

  • Check OSI Layer 3–4 (IP reach? TCP port open?)
  • Check Layer 7 (Is API URL or endpoint wrong?)

🔹 Common Interview Question

🗣️ Q: Can you explain the difference between OSI and TCP/IP?

Answer (Nepali-English mix):
OSI model theoretical framework हो जुन 7 layers मा communication define गर्छ, जबकि TCP/IP भनेको practically प्रयोग हुने 4-layer protocol stack हो। Testing मा हामी TCP/IP मा काम गर्छौं — जस्तै API test गर्दा Transport Layer मा TCP protocol प्रयोग हुन्छ, र Internet Layer मा IP addressing।


✅ Summary

Concept OSI Model TCP/IP Model
Layers 7 4
Use Conceptual Practical
Relevance Deep understanding Day-to-day QA testing
QA Debugging Works layer-by-layer Works tool-by-tool (e.g., curl, Postman, traceroute)

📘 Topic 5: TCP vs UDP (Transport Layer Protocols)


🔹 What are TCP and UDP?

Both TCP (Transmission Control Protocol) and UDP (User Datagram Protocol) are Transport Layer protocols used to send data from one device to another over a network.

📖 Nepali Insight:
TCP र UDP दुवै तरीका हुन् network मा data पठाउने तर तरिका फरक हुन्छ। TCP ले data reliably पठाउँछ, UDP छिटो पठाउँछ तर guarantee हुँदैन कि त्यो पुग्छ।


🔹 TCP – Reliable, Connection-Oriented

Feature Description
Type Connection-oriented
Delivery Reliable (Acknowledgment-based)
Error checking Yes
Speed Slower due to handshake
Use Cases Web browsing, Email, File Transfer, APIs

🧠 Example for QA:
जब तपाईं curl प्रयोग गरेर ML API endpoint test गर्नुहुन्छ, त्यो TCP बाट जाने HTTP request हो। यदि connection fail भयो भने QA ले TCP-layer debugging गर्नुपर्छ।

📌 3-Way Handshake:

  1. Client: SYN →
  2. Server: SYN-ACK →
  3. Client: ACK → Connection established

🔹 UDP – Unreliable, Connectionless

Feature Description
Type Connectionless
Delivery Not guaranteed
Error checking Minimal
Speed Very fast
Use Cases Streaming, Gaming, Live video/audio, DNS lookup

🧠 Example for AI QA:
यदि तपाईं real-time inference model test गर्दै हुनुहुन्छ (e.g., voice-to-text), UDP को प्रयोग भएको हुन सक्छ — किनकि delay होइन speed मुख्य concern हो।


🔹 Side-by-Side Comparison

Feature TCP UDP
Connection Yes No
Reliability High Low
Speed Slower Faster
Use API, Web Streaming, DNS
Error Recovery Yes No
Packet Order Guaranteed Not guaranteed

🔹 How This Affects QA Testing

Scenario Protocol QA Task
API test TCP Validate response, retry, timeout
DNS test UDP Ensure name resolution works
Real-time AI model Often UDP Validate performance, packet loss, delay
Load test TCP Monitor response consistency
Socket test Both Use correct protocol in test script or automation tool

📌 Note: Some systems use QUIC, which is a newer protocol (Google’s protocol over UDP with TCP features).


🔹 Command Line Example (Windows/Linux)

bash

CopyEdit

netstat -an    # Show active TCP and UDP connections


✅ Summary

Protocol Best For AI QA Relevance
TCP Reliable communication (APIs) Standard testing, automation, model health check
UDP Speed-critical apps Real-time model, stream QA, performance testing

This topic helps especially in API testing, firewall debugging, network accessibility checks, and cloud-based AI service testing.


📘 Topic 6: Ports and Protocols


🔹 What is a Port?

A port is a virtual number assigned to every service or application on a device that communicates over the network.

📖 Nepali Insight:
IP Address ले कुन device मा जानु पर्छ भन्ने जनाउँछ, अनि Port Number ले त्यो device भित्र कुन service (API, website, database) सँग connect हुने भन्ने जनाउँछ।

Example:

yaml

CopyEdit

http://192.168.0.1:8080 → IP Address: 192.168.0.1, Port: 8080


🔹 What is a Protocol?

A protocol is a set of rules that governs how data is exchanged between systems.
Each protocol operates on a specific port (or range of ports).


🔹 Common Ports and Their Protocols

Port Number Protocol Use Case
20, 21 FTP File Transfer
22 SSH Secure remote login
23 Telnet Remote login (insecure, legacy)
25 SMTP Sending email
53 DNS Domain resolution
80 HTTP Web traffic (non-secure)
443 HTTPS Secure web traffic (used in API calls)
3306 MySQL Database connections
5000/8000/8080 Custom APIs Localhost-based or dev APIs

🧠 For AI QA:

  • Model serving via Flask: often runs on localhost:5000
  • Web UI testing for model dashboard: often port 8080 or 443

🔹 Why It Matters for QA Engineers

Task Port Role
API Testing Ensure correct port used in endpoint
Firewall Issue Port might be blocked
Model Server Unreachable Port not open or wrong
CI/CD Integration Jenkins uses specific ports
Load Balancing Test if traffic is routing to correct port

📌 Tip: Always check if a service is listening on the expected port:

bash

CopyEdit

netstat -an | find “LISTEN”


🔹 Example for AI Model Test

You deploy a sentiment analysis model on:

arduino

CopyEdit

http://127.0.0.1:5000/predict

Here:

  • IP: 127.0.0.1 (localhost)
  • Port: 5000 (Flask default)
  • API: /predict

Your test script (e.g., Postman or PyTest) must target that exact port.


🔹 Tools to Help

Tool Use
netstat Check open ports
telnet [ip] [port] Check if port is reachable
nmap Scan for open ports on a server

✅ Summary

Concept Purpose QA Use
Port Identifies app/service on a device API, DB, or model testing
Protocol Rules for data exchange HTTP/HTTPS, FTP, SSH
Common Ports 80 (HTTP), 443 (HTTPS), 22 (SSH), 5000 (Flask) Endpoint availability check


📘 Topic 7: DNS – Domain Name System


🔹 What is DNS?

DNS stands for Domain Name System. It translates human-readable domain names (like api.mymodel.com) into machine-readable IP addresses (like 104.21.8.120).

📖 Nepali Insight:
DNS ले तपाईँले लेख्नुभएको website address (google.com) लाई computer ले बुझ्ने IP address मा परिवर्तन गर्छ।
मानौं तपाईँ फोनमा “माई आमा” लेखेर call गर्नुहुन्छ, तर backend मा actual number डायल हुन्छ — DNS पनि त्यस्तै काम हो।


🔹 Why DNS Matters for QA

Scenario QA Concern
API call fails with domain DNS resolution issue
Postman gives timeout Domain may not be mapped
CI/CD test fails on staging DNS entry for staging might be missing
Model hosted on subdomain Subdomain may not resolve

🧠 Example:
If https://ml-api.example.com/predict fails, check whether ml-api.example.com resolves to a valid IP.


🔹 DNS Query Example

You run:

bash

CopyEdit

ping ml-api.example.com

System queries DNS to find the IP address behind the domain. If not found = DNS resolution failed.


🔹 Types of DNS Records (Important for QA)

Type Meaning Use
A Maps domain to IPv4 example.com → 192.0.2.1
AAAA Maps domain to IPv6 → 2001:db8::1
CNAME Alias to another domain api.example.com → prod.api.com
MX Mail records Email testing
TXT Metadata (e.g., SPF for email) Security testing

🔹 Tools for DNS Testing

Tool Use
nslookup Lookup IP of domain
dig Advanced DNS check
ping Resolve and test connectivity
Browser Type domain and see if it loads

🔹 DNS Cache and QA Troubleshooting

Sometimes DNS issues are caused by cached data on your local system.

🧽 Flush DNS (Windows):

bash

CopyEdit

ipconfig /flushdns

📌 QA Tip: If your automated test fails suddenly, flushing DNS might fix the issue — especially after switching environments.


🔹 Example in AI QA Context

You are testing a model endpoint:

arduino

CopyEdit

https://staging.modelapi.ai/predict

✅ What to check:

  • Does the domain resolve to IP?
  • Is the DNS record pointing to the correct staging server?
  • Do subdomains (e.g., dev.modelapi.ai) work as expected?
  • Is DNS propagation complete (for new domains)?

✅ Summary

Concept Purpose QA Use
DNS Translates domain to IP API endpoint validation
A/CNAME Record Domain mappings Check dev/staging environments
Tools: ping, nslookup Troubleshoot resolution issues Verify model URL health
DNS Caching Local browser or OS issue Flush DNS to clear


📘 Topic 8: Firewall & NAT (Network Address Translation)


🔹 What is a Firewall?

A firewall is a security system that monitors and controls incoming and outgoing network traffic based on pre-defined security rules.

📖 Nepali Insight:
Firewall भनेको एउटा gatekeeper हो जुन decide गर्छ कि कुन traffic network भित्र जान दिनु वा नदिनु।
QA को काम गर्दा firewall ले block गरेको request fail हुन सक्छ — त्यसैले troubleshooting गर्न firewall knowledge अत्यन्त जरुरी छ।


🔹 Types of Firewalls

Type Description QA Relevance
Network Firewall Protects the entire network Blocks external model access
Host-based Firewall Installed on individual machines Local API blocked on laptop
Cloud Firewall (e.g., AWS Security Groups) Used in cloud servers Allow/deny model port access

🧠 Example:
You deploy a model on EC2 (AWS), but your automation script fails to connect.
Solution: Check if port 5000 is allowed in security group (cloud firewall).


🔹 Common Issues for QA

Issue Possible Firewall Cause
Connection timeout Port is blocked
403 Forbidden App-level rule
Can’t hit internal model VPN or IP not whitelisted
Jenkins can’t trigger test Jenkins server blocked

📌 Tip: Always ask:
👉 Is the API port open?
👉 Is my IP allowed?
👉 Is there a proxy/firewall in between?


🔹 What is NAT (Network Address Translation)?

NAT is a process where a private IP address inside a network is mapped to a public IP address to allow internet communication.

📖 Nepali Insight:
NAT ले तपाईंको घरभित्रको private IP (192.168.x.x) लाई बाहिरी world सँग connect गर्नका लागि public IP मा translate गर्छ।


🔹 Types of NAT

Type Description
Static NAT 1-to-1 mapping (fixed)
Dynamic NAT Many-to-many, dynamic
PAT (Port Address Translation) Multiple devices use same public IP with different ports

🧠 QA Use Case:
You are testing a model from your internal machine (192.168.1.20), but the server only accepts requests from whitelisted public IPs.
➡ You’ll need NAT to translate your request.


🔹 Firewall vs NAT – What’s the Difference?

Feature Firewall NAT
Purpose Block/Allow traffic Translate IPs
Controls Access Address mapping
QA Concern API blocked, port issues IP mismatch, no response
Works On Ports/IPs/Protocols Source/Destination IP

🔹 Tools to Diagnose

Tool Use
ping Basic connectivity
tracert or traceroute See if packet is blocked mid-path
telnet [host] [port] Check open port
Postman / cURL API-level firewall block detection

✅ Summary

Concept Meaning QA Use
Firewall Controls network access API testing, blocked request debugging
NAT Translates private/public IP Internal to external network testing
Security Group Cloud-based firewall Allow model ports in AWS, Azure
PAT Multiple devices sharing public IP Validate source port in logs


📘 Topic 9: VPN & Remote Access


🔹 What is a VPN?

A VPN (Virtual Private Network) creates a secure, encrypted connection between your device and a remote network over the internet. It allows you to access internal resources as if you were physically connected to that private network.

📖 Nepali Insight:
VPN ले तपाईंलाई office वा cloud network भित्र virtually connect गराउँछ, जुन physical रूपमा तपाईं त्यहाँ नभए पनि तपाईंको computer त्यही भित्रको जस्तो व्यवहार गर्छ।

🧠 Example:
If your AI model is hosted on a company’s internal server (10.0.1.15), you can’t access it from your home unless you connect through a VPN.


🔹 Why QA Engineers Use VPN

Reason QA Context
Access internal APIs For testing models on dev/staging servers
Bypass firewalls Reach services not available to public
Secure test traffic Encrypt sensitive test data
Remote debugging Troubleshoot services via terminal or test tool

🔹 Types of VPNs (Relevant to QA)

Type Description Example
Site-to-Site Connects two networks Company branch to cloud
Client-to-Site Connects a device to a private network QA laptop to AWS VPC
Cloud VPN VPN inside AWS, Azure, GCP Testing AI model in private subnet

🔹 Tools Commonly Used

Tool Purpose
OpenVPN Secure open-source VPN client
Cisco AnyConnect Enterprise-grade VPN client
AWS Client VPN Cloud access to private subnets
WireGuard Lightweight and secure VPN

📌 After VPN is connected, you can ping or test internal services that were unreachable before.


🔹 Common QA Scenarios Requiring VPN

Scenario Description
API test fails with timeout Might need VPN to reach internal endpoint
CI/CD pipeline triggers internal test Jenkins agent must be on VPN
Secure test data required Use VPN for encrypted transmission
Test server has private IP VPN must be connected to reach 10.x.x.x or 192.168.x.x IPs

🔹 Remote Desktop vs VPN

Feature VPN Remote Desktop
Access Scope Full network access One machine only
Speed Usually faster Slower due to screen rendering
Use Case API, DB, model testing Manual UI or system checks

📖 Nepali Example:
VPN ले तपाईंको computer लाई सिधै company network मा राखिदिन्छ; remote desktop भनेको अर्को computer को स्क्रिन खोलेर काम गर्नु हो।


🔹 How to Know You’re on VPN

After VPN connection:

  • You can access internal IPs (e.g., 10.0.0.0/16)
  • Your public IP changes
  • Internal resources like JIRA, Jenkins, model dashboards work

✅ Test:

bash

CopyEdit

ping 10.0.1.10   # Internal model IP


✅ Summary

Concept Meaning QA Use
VPN Secure virtual link to private network Test internal AI models
Client-to-Site QA device → company/cloud Access staging/test environments
Tools OpenVPN, Cisco AnyConnect Used to connect securely
Why Needed API tests, secure model access, DB testing Encrypted and isolated access


📘 Topic 10: HTTP, HTTPS, and SSL/TLS


🔹 What is HTTP?

HTTP (HyperText Transfer Protocol) is the standard protocol used for communication between clients (like browsers or test tools) and servers over the web.

📖 Nepali Insight:
HTTP भनेको त्यो नियम हो जसअनुसार तपाईंको browser वा Postman ले server सँग कुरा गर्छ। तपाईंको ML model लाई API call पठाउँदा यो protocol प्रयोग हुन्छ।


🔹 What is HTTPS?

HTTPS (HTTP Secure) is HTTP with encryption. It uses SSL/TLS certificates to secure data during transmission.

📖 Real World Use:
When you send data (like login credentials or JSON request body) over HTTPS, it gets encrypted so that no one in the middle (e.g., hacker) can read or modify it.


🔹 SSL/TLS Explained

Term Meaning
SSL (Secure Sockets Layer) Old encryption standard
TLS (Transport Layer Security) Modern and secure version of SSL

➡ In practice, HTTPS = HTTP + SSL/TLS

🧠 QA Use Case:
When your test script fails with an error like:

pgsql

CopyEdit

SSLHandshakeException: Unable to find valid certification path

→ It’s because the certificate is invalid or untrusted.


🔹 Why HTTPS is Important for QA & AI

Purpose QA Relevance
Secures API traffic Validates endpoint trust
Required in prod environments Ensures data protection (e.g., patient data in ML health app)
Avoids man-in-the-middle attacks Encrypts credentials & model predictions
Certificate validation Critical part of endpoint test

📌 Example:

bash

CopyEdit

curl -X POST https://ml-api.example.com/predict

This call will fail if the server certificate is expired or mismatched.


🔹 HTTP vs HTTPS (Comparison)

Feature HTTP HTTPS
Secure? ❌ No ✅ Yes
Port 80 443
Certificate Not needed Required (SSL/TLS)
Use in QA Dev/test Production, sensitive data
Common Errors 301 redirect SSL handshake, certificate expired

🔹 Tools to Test SSL/TLS

Tool Purpose
Postman Shows certificate errors in response
Browser Lock icon → certificate details
curl -v View SSL handshake log
openssl s_client Deep dive SSL test

🔹 Bonus: Let’s Encrypt for Testing

In dev environments, SSL certificates can be self-signed or provided by Let’s Encrypt (free CA). But for automation, always ensure:

  • Proper domain name mapping (DNS)
  • Valid certs installed
  • Chain of trust is complete

✅ Summary

Concept Description QA Use
HTTP Unsecured web protocol Internal dev/test only
HTTPS Secure version of HTTP using SSL/TLS Production, secure API testing
SSL/TLS Encryption protocols Prevents data leaks
QA Concern Validate certs, port 443 open, handle errors  

🎯 Pro Tip for Automation:
In tools like REST Assured or Python Requests, use:

java

CopyEdit

relaxedHTTPSValidation();

or

python

CopyEdit

verify=False

in dev testing — but never disable SSL validation in production.



📘 Topic 11: ping, traceroute, nslookup, and netstat

🛠️ Essential Network Diagnostic Tools for QA Engineers


🔹 1. ping

The ping command is used to check basic connectivity between your machine and another IP/domain.

📖 Nepali Insight:
ping ले जाँच गर्छ कि तपाईँले पठाएको request अगाडि पठाइएको machine मा पुगेको छ कि छैन र फर्केर response आएको छ कि छैन।

🧪 Usage:

bash

CopyEdit

ping google.com

ping 192.168.0.10

📌 QA Use:

  • Check if API server is up
  • Check network block/firewall
  • Validate DNS resolution indirectly

🔹 2. traceroute / tracert

This shows the path taken by a packet across the network from source to destination, including all hops (intermediate routers).

📖 Nepali Example:
तपाईंको request कति वटा router पार गरेर server मा पुग्छ भनेर देखाउने command हो।

🧪 Usage:

bash

CopyEdit

traceroute google.com     # Linux/Mac

tracert google.com        # Windows

📌 QA Use:

  • Find where the request is getting stuck (e.g., in VPN, firewall)
  • Diagnose slow API response

🔹 3. nslookup

nslookup is used to query the DNS system to find the IP address associated with a domain name.

🧠 Nepali View:
Domain name को पछाडि कुन IP address छ भनेर थाहा पाउने tool हो।

🧪 Usage:

bash

CopyEdit

nslookup ml-api.example.com

📌 QA Use:

  • Check if domain resolves correctly
  • Detect DNS misconfiguration
  • Help diagnose SSL errors due to wrong mapping

🔹 4. netstat

netstat (network statistics) shows active network connections, listening ports, and routing tables.

🧪 Usage:

bash

CopyEdit

netstat -an       # All connections and ports

netstat -ano      # + Process ID

📌 QA Use:

  • Check if your local app is listening on port 5000, 8080, etc.
  • Check open ports before running tests
  • Detect port conflicts or missing service

🔹 Common Use Case in AI QA

Problem Tool to Use How it Helps
API timeout ping, traceroute Check server availability or packet drop
Domain not working nslookup Confirm DNS resolution
Local model server not starting netstat See if port is already in use
Connection refused error netstat, ping Check if port is open and server reachable

✅ Summary

Tool Use QA Scenario
ping Connectivity test API/server reachable?
traceroute Path test Packet stuck where?
nslookup DNS resolution Domain to IP check
netstat Port/connection info App/server listening or not


📘 Topic 12: Load Balancer & Proxy Server


🔹 What is a Load Balancer?

A Load Balancer is a network component that distributes incoming traffic across multiple backend servers or services to ensure availability, performance, and fault tolerance.

📖 Nepali Insight:
Load balancer ले एउटै प्रकारको धेरै server हरुमा traffic बाँड्छ — जसले overload, crash, वा slow-down हुनबाट बचाउँछ।


🔹 Types of Load Balancers

Type Description QA Example
Layer 4 (Transport Layer) Based on IP/port (TCP/UDP) Port 443 API load distribution
Layer 7 (Application Layer) Based on URL, headers, cookies /predict route goes to ML model A, /train to model B

🧠 QA Scenario:
If one server returns 200 OK and another 500 Error, you must validate how the load balancer handles fallback or error responses.


🔹 Load Balancer Algorithms

Algorithm Use Case
Round Robin Equal traffic to all servers
Least Connections Send to the least busy server
IP Hash User-specific routing (same user, same server)
Weighted Based on server capacity or priority

📌 QA Tip: Write tests to verify that no single server gets overloaded if the load balancer is configured correctly.


🔹 What is a Proxy Server?

A Proxy Server acts as a middleman between the client and the destination server. It can control access, monitor requests, or cache responses.

📖 Nepali View:
Proxy server भन्नाले तपाईँको request सिधै server मा नजाने, पहिले अर्को server (proxy) मा गएर मात्र जान्छ — यो filter जस्तो हुन्छ।


🔹 Types of Proxies

Type Description QA Use
Forward Proxy Client-side proxy Used in corporate networks
Reverse Proxy Server-side interface Used in front of ML APIs
Transparent Proxy No visible impact Caching/static content delivery

🧠 QA Scenario:
Reverse proxies like Nginx are often used in front of Flask, FastAPI, or Django-based ML services. If API fails, you should check:

  • Is the proxy up?
  • Is the proxy forwarding to the correct backend?

🔹 Load Balancer vs Proxy Server

Feature Load Balancer Proxy Server
Purpose Distribute traffic Route/control traffic
Visibility Often invisible to client May or may not be
Common Use High availability, scaling Access control, caching, routing
QA Testing Focus Server selection, failover Header modification, access control test

🔹 Tools for Testing

Tool Use
Postman Test how proxy/load balancer responds
curl with -x Send through a proxy
Logs Compare requests across servers
HAProxy Stats, Nginx Logs Monitor routing decisions

✅ Summary

Concept Meaning QA Relevance
Load Balancer Distributes traffic across servers Validate load handling, response consistency
Reverse Proxy Routes requests to backend service Test endpoint behavior, access rules
Testing Tip Test each backend independently & through proxy/balancer Find source of error when multiple layers involved


✅ 40 Essential Keyboard Shortcuts (Windows Focused)

🔹 General Navigation

Shortcut Function
Ctrl + C Copy
Ctrl + V Paste
Ctrl + X Cut
Ctrl + Z Undo
Ctrl + Y Redo
Ctrl + A Select all
Ctrl + P Print
Alt + Tab Switch between open apps
Alt + F4 Close current window
Win + D Show desktop (minimize all)

🔹 File Explorer & System

Shortcut Function
Win + E Open File Explorer
Win + R Open Run dialog
Win + L Lock your PC
Win + I Open Settings
Win + Pause/Break System Properties
Alt + Enter File properties
F2 Rename selected file
F5 Refresh window or page
Ctrl + Shift + N Create new folder

🔹 Browser Shortcuts (Chrome, Edge, Firefox)

Shortcut Function
Ctrl + T Open new tab
Ctrl + W Close current tab
Ctrl + Shift + T Reopen closed tab
Ctrl + Tab Switch to next tab
Ctrl + L or Alt + D Focus address bar
Ctrl + F Find text on page
Ctrl + D Bookmark current page
Ctrl + H Open browser history

🔹 Text Editing / IDE (VS Code, Eclipse, etc.)

Shortcut Function
Ctrl + S Save file
Ctrl + Shift + S Save all
Ctrl + / Comment/uncomment code
Ctrl + F Find
Ctrl + H Replace
Ctrl + Shift + F Find in all files
Ctrl + Shift + N New file or project
Ctrl + B Toggle sidebar (VS Code)
F12 Go to definition
Ctrl + Space Autocomplete/suggestions

🔹 Debugging / QA Specific

Shortcut Function
F5 Start debugging
Shift + F5 Stop debugging
F9 Toggle breakpoint
Ctrl + Shift + I Open browser developer tools (Chrome)
Ctrl + Shift + Del Clear browser cache/history
Scroll to Top