Showing posts with label Testing - Study Materials. Show all posts
Showing posts with label Testing - Study Materials. Show all posts

Saturday, March 2, 2013

More about Extreme Testing or Test Driven Methodology

Extreme Programming

In Extreme Programming, rather than designing whole of the system at the start of the project, the preliminary design work is reduced to solving the simple tasks that have already been identified.
The developers communicate directly with customers and other developers to understand the initial requirements. They start with a very simple task and then get feedback by testing their software as soon as it is developed. The system is delivered to the customers as soon as possible, and the requirements are refined or added based on customer feedback. In this way, requirements evolve over a period of time, and developers are able to respond quickly to changes.
The real design effort occurs when the developers write the code to fulfill the specific engineering task. The engineering task is a part of a greater user story (which is similar to a use case). The user story concerns itself with how the overall system solves a particular problem. It represents a part of the functionality of the overall system. A group of user stories is capable of describing the system as a whole. The developers refactor the previous code iteration to establish the design needed to implement the functionality.
During the Extreme Programming development life cycle, developers usually work in pairs. One developer writes the code for a particular feature, and the second developer reviews the code to ensure that it uses simple solutions and adheres to best design principles and coding practices.
Discussion of the core practices of Extreme Programming is beyond the scope of this chapter. For more information, see the links referred to in "More Information" later in this section.
Test-driven development, which is one of the core practices in Extreme Programming, is discussed in greater detail later in this chapter.

When to Use Extreme Programming

Extreme Programming is useful in the following situations:
  • When the customer does not have a clear understanding of the details of the new system. The developers interact continuously with the customer, delivering small pieces of the application to the customer for feedback, and taking corrective action as necessary.
  • When the technology used to develop the system is new compared to other technologies. Frequent test cycles in Extreme Programming mitigate the risk of incompatibility with other existing systems.
  • When you can afford to create automated unit and functional tests. In some situations, you may need to change the system design so that each module can be tested in isolation using automated unit tests.
  • When the team size is not very large (usually 2 to 12 people). Extreme Programming is successful in part because it requires close team interaction and working in pairs. A large team would have difficulty in communicating efficiently at a fast pace. However, large teams have used Extreme Programming successfully.

More Information

For more information about the core practices in Extreme Programming, see the following resources:

Thursday, February 16, 2012

More about Extreme Testing or Test Driven Methodology

Extreme Programming

In Extreme Programming, rather than designing whole of the system at the start of the project, the preliminary design work is reduced to solving the simple tasks that have already been identified.
The developers communicate directly with customers and other developers to understand the initial requirements. They start with a very simple task and then get feedback by testing their software as soon as it is developed. The system is delivered to the customers as soon as possible, and the requirements are refined or added based on customer feedback. In this way, requirements evolve over a period of time, and developers are able to respond quickly to changes.
The real design effort occurs when the developers write the code to fulfill the specific engineering task. The engineering task is a part of a greater user story (which is similar to a use case). The user story concerns itself with how the overall system solves a particular problem. It represents a part of the functionality of the overall system. A group of user stories is capable of describing the system as a whole. The developers refactor the previous code iteration to establish the design needed to implement the functionality.
During the Extreme Programming development life cycle, developers usually work in pairs. One developer writes the code for a particular feature, and the second developer reviews the code to ensure that it uses simple solutions and adheres to best design principles and coding practices.
Discussion of the core practices of Extreme Programming is beyond the scope of this chapter. For more information, see the links referred to in "More Information" later in this section.
Test-driven development, which is one of the core practices in Extreme Programming, is discussed in greater detail later in this chapter.

When to Use Extreme Programming

Extreme Programming is useful in the following situations:
  • When the customer does not have a clear understanding of the details of the new system. The developers interact continuously with the customer, delivering small pieces of the application to the customer for feedback, and taking corrective action as necessary.
  • When the technology used to develop the system is new compared to other technologies. Frequent test cycles in Extreme Programming mitigate the risk of incompatibility with other existing systems.
  • When you can afford to create automated unit and functional tests. In some situations, you may need to change the system design so that each module can be tested in isolation using automated unit tests.
  • When the team size is not very large (usually 2 to 12 people). Extreme Programming is successful in part because it requires close team interaction and working in pairs. A large team would have difficulty in communicating efficiently at a fast pace. However, large teams have used Extreme Programming successfully.

More Information

For more information about the core practices in Extreme Programming, see the following resources:

Friday, June 3, 2011

All useful questions for a PERFECT tester



Testing related Mysql Database Interview Questions


Explain about MySQL and its features.
Latest answer - MySQL is a relational database management system which........            
Read answer
What are the disadvantages of MySQL?
Latest answer  - MySQL does not support a very large database size as efficiently........
Read answer
What are the security recommendations while using MySQL?
Latest answer  - Access to the user table should never be given to avoid SQL injection attacks..........
Read answer
Describe MyISAM table.
Latest answer  - In MySQL MyISAM is the default storage engine. MyISAM tables........
Read answer
What is HEAP table?
Latest answer  - Tables that are present in the memory are called as HEAP tables. When creating a HEAP table........
Read answer
What is Query Cache in MySQL?
Latest answer  - Query Cache in MySQL is used in scenarios when the same queries need to be executed..........
Read answer
How is Exception Handling handled in MySQL?
Latest answer  - Exception handling means changing the usual expected flow of the code..........
Read answer
What are the Performance and Scalability characteristics of MySQL?
Latest answer  - MySQL has a unique storage engine architecture that makes it adaptable to most.........
Read answer
What are the limitations of mysql in Comparison of Oracle?
Latest answer  - Transactions are better supported in Oracle as compared to Mysql..........
Read answer
What is a Trigger in MySQL? Define different types of Trigger?
Latest answer  - A trigger is a set of code which is executed in response to some event. ..........
Read answer
What is the difference between CHAR_LENGTH and LENGTH?
Latest answer  - CHAR_LENGTH includes leading and trailing blanks and the string-termination.......
Read answer
Explain the difference between BOOL, TINYINT and BIT.
Latest answer  - BIT data type can store up to 8 bytes from My SQL version 5.0.3.......
Read answer
What are ENUMs used for in MySQL?
Latest answer  - Using Enum can restrict the number of values that can be allowed to go inside a table. If there is an ENUM for Colors .....
Read answer
Explain MySQL Aggregate Functions.
Latest answer  - Aggregate functions in MySQL are a group of functions that are used to operate.......
Read answer
Describe Transaction-Safe Table Types in MySQL
Latest answer  - While using transactions in MySQL a transaction –safe table type must.......
Read answer
Describe MySQL Connection using mysql binary.
Latest answer  - Establishing connection to MySQL database using Mysql binary........
Read answer
Explain advantages of MyISAM over InnoDB
Latest answer - MyISAM is faster than InnoDB in most of the cases.........
Read answer
MySQL - Stored Procedures and Triggers
Latest answer - When multiple applications need to perform common database operations........
Read answer
Primary Keys and Auto Increment Fields in MySQL
Latest answer - Primary key is used to uniquely identify a row in a table.........
Read answer
COMMIT and ROLLBACK in MySQL
Latest answer - A transaction in MySQL is a set of SQL statements written to perform a specific task.........
Read answer
ALTER command to add and drop INDEX in MySQL
Latest answer - An index in MySQL can be added using ALTER statement in multiple ways as shown........
Read answer
Describe MySQL Connection using PHP Script.
Latest answer  - Establishing connection to MySQL database using PHP can be done...........
Read answer

How will you export tables as an XML file in MySQL?

MYSQL’s query browser has a provision called “Export Result Set” which allows the tables to be exported as XML.

What is the use of i-am-a-dummy flag in MySQL?

Using the i-am-dummy flag makes the SQL engine refuse any Updates or deletes to execute if the WHERE clause is not present. It is very useful when using delete statements. Using i-am-dummy flag will not allow the following statement to execute:
Delete from employee;

What are the differences between MySQL_fetch_array(), MySQL_fetch_object(), MySQL_fetch_row()?

Mysql_fetch_object returns the result from the database as objects while mysql_fetch_array returns result as an array. This will allow access to the data by the field names. E.g. using mysql_fetch_object field can be accessed as $result->name and using mysql_fetch_array field can be accessed as $result->[name]. mysql_fetch_row($result):- where $result is the result resource returned from a successful query executed using the mysql_query() function.
Example:
$result = mysql_query(“SELECT * from students);
while($row = mysql_fetch_row($result))
{
       Some statement;
}

What is difference between mysql_connect and mysql_pconnect?

Mysql_connect() opens a new connection to the database while mysql_pconnect() opens a persistent connection to the database. This means that each time the page is loaded mysql_pconnect() does not open the database. Mysql_close() cannot be used to close the persistent connection. Though it can be used to close mysql_connect().

What is MySQL data directory? How to determine the location of the data directory?

MySQL stores its data on the disk on the data dictionary. Each subdirectory under this data dictionary represents a MySQL database, inside those directories. By default the information managed my MySQL = server mysqld is stored in data directory.A default location of data directory in windows is C:\mysql\data or C:\Program Files\MySQL\MySQL Server 5.0 \data..

What you can use Regular Expression for in MySQL? Support your answer with an example.

Regular expressions in MySql are used in queries for searching a pattern in a string.
·         * Matches 0 more instances of the string preceding it.
·         + matches 1 more instances of the string preceding it.
·         ? Matches 0 or 1instances of the string preceding it.
·         . Matches a single character.
·         [abc] matches a or b or z
·         | separates strings
·         ^ anchors the match from the start.
REGEXP can be used to match the input characters with the database.
Example:
The following statement retrieves all rows where column employee_name contains the text 1000 (example salary):
Select employee_name
From employee
Where employee_name REGEXP ‘1000’
Order by employee_name
“.” Can be used to match any single character. “|” can be used to match either of the two strings
MySQL disadvantages - September 30, 2009 at 18:00 pm by Vidya Sagar
How will you export tables as an XML file in MySQL?
From the command prompt type the following statement:

mysql -u test --xml -e 'SELECT * FROM t1' > t1.xml
where ‘ –u test ‘ is the user name, --xml indicates the type of the file is xml, -e for export
What is the use of i-am-a-dummy flag in MySQL?
The flag i-am-a-dummy flag makes the MySQL engine to deny the UPDATE and DELETE commands unless the WHERE clause is present.
What are the differences between MySQL_fetch_array(), MySQL_fetch_object(), MySQL_fetch_row()?
The mysql_fetch_object() returns the result from the database as an object.
Ex: $result->name
The mysql_fetch_array() returns the result from the database as an associative array or numeric array or both by using mysql_NUM or mysql_ASSOC options.
EX: $result[0] ,$result['name']
The mysql_fetch_row() returns the result from the database as a numeric array.
Ex: $result[0]
What is difference between mysql_connect and mysql_pconnect?
Mysql_connect:
- Opens a new connection to the database
- The database connection can be closed
- Opens the page every time the page is loaded.
Mysql_pconnect:
- Opens a persistent connection to the database.
- The database connection can not be closed.
- The page need not be opened every time the page is loaded.
What is MySQL data directory? How to determine the location of the data directory?
MySQL data directory is most important location in which all MySQL databases are stored. The default data directory is located in the file mysql.lf.
If the out of the space is the issue, then the directory need to be moved another location. Before moving, the database need to be closed. After moving the MySQL configuration file need to be edited. Look for the ‘datadir’ entry and change the path to the new directory.
What you can use Regular Expression for in MySQL? Support your answer with an example.
Regular expressions are a set of characters. Regular expressions are used for finding certain sequences in strings.
The following are the regular expression characters:
- * Represents matching characters that are 0 or more occurrences of the string that precedes it.
- + Represents matching characters that are 1 or more occurrences of the string that precedes it.
- ? Represents matching characters that are 0 or 1 occurrences of the string that precedes it.
- . Represents single character pattern matching.
- [abc] Represents matching characters that is either a or b or c
- | Used for separation of strings
- ^ Finds the matching pattern starting from the beginning.
To match the input characters with database tables, REGEXP is used. For example:
Select cityname from territories where cityname REGEXP ‘^(jo)*’;
The above query returns all city names that has the substring ‘jo’.







Is it required to use Index when the MySQL table has only 100 rows? Justify your answer 


Can use rownum.






Which of the following is not a MySQL Operator?a. Between..and..,b. Like,c. IN,d. Is NULL 










How to solve MySQL timeout issue? 









How will you export tables as an XML file? 










General Interview Questions