Powered by Blogger.

Working with enterprise library for data access in asp.net Part-3

To work with enterprise library you have to download required from this URL. Here we will use Enterprise Library 5.0 version. We need to give reference in Bin folder to the following dlls: Microsoft.Practices.EnterpriseLibrary.Common.dll Microsoft.Practices.EnterpriseLibrary.Configuration.Design.dll

Asp.Net MVC4 sample application

we will make a sample application using Asp.Net MVC4. Open Visual Studio 2010, then go to File -> New Project. This will open the New Project dialog box. From there make sure .Net Framework 4 is selected. Then select the Visual C# -> Web templates list. From the web template lists, Select ASP.NET MVC 4 Web Application and give a name.

Object Oriented Programming (OOP) concepts in .Net

Mainly there are 3 things in OOPs concept. 1- Inheritance 2- Abstraction 3- Polimorphism Inheritance is one of the key feature of oops concept and C# supports inheritance. Inheritance is a process of deriving the new class from already existing class. It allows you to reuse existing code.

Tutorial on MVVM with WPF

MVVM is nothing but Model view and viewModel.This is the best architecture for WPF. VIEW: A View is defined in XAML and should not have any logic in the code-behind. It binds to the view-model by only using data binding. The View contains the visual controls that will be shown to the user.This is the UI.

WCF tutorial and example in C#.Net

We will discuss how to create a WCF service and how we can consume the WCF service. Open Visual Studio 2010, then go to File -> New -> Project. Then from the New Project dialog box, From the Installed Templates Select WCF from the left hand site, And then Choose WCF Service Library and Give a proper name and Click on OK.

Saturday, March 29, 2014

Remove column from datatable in Asp.Net

In this post we will discuss how to remove columns from a datatable in Asp.Net.

Also you can check out:

- Tutorial on WPF Controls and Layout

- Cross-page posting in Asp.Net

- Convert ArrayList to String using C#.Net

DataTable represents one table of in-memory data. It contains rows and columns. You can also check out this article, if you want to create a datatable at runtime.

Suppose you want to delete a column from a datatable, they you can delete by using the column name or the column index.

dt.Columns.Remove("Name"); // Here it will remove the Name column from the datatable.

or

dt.Columns.Remove(2); // Here it will delete the 3rd column from the datatable, because index starts from 0.

Here dt is the object name of my datatable.

Thursday, March 27, 2014

Asp.Net job openings with Ness Technologies

Here is a Asp.Net job openings with Ness Technologies.
Job Location: Bangalore
Experience: 5 to 8 Years

Skills:
1. Strong conceptual knowledge on programming skills
2. Strong logical reasoning and analytical skills
3. Strong communication and presentation skills
4. Good understanding of Object Oriented Programming(OOPs) concepts.
5. Hands on experience in the .NET Based enterprise application development using ASP.NET, WCF, C#.Net and SQL Server. We currently work with .NET framework 4.0 and SQL Server 2008 R2.
6. Hands on experience in the AJAX based ASP.NET Web application development
7. Technical document writing for developed modules

Added Advantage:1. Experience in unit testing and code analysis
2. Experience Knowledge in Windows Workflows Foundation(WWF), Windows Communication Foundation(WCF) and LINQ to objects is desirable
3. Knowledge on third party UI controls like Telerik, Infragistics, JQuery etc
4. Candidates from product development background
NOTE: Lead candidates must have hands on designing experience.

If interested kindly send across your updated resume to sasikalan02@gmail.com with the following details.

IT Exp:
Exp in Asp.net:
Exp in WCF:
Current CTC:
Expected CTC:
Notice period :
Available for F2F on 29th of march(saturday) (Y/N):

Wednesday, March 26, 2014

.Net module lead requirement in Media technology company

Here is a .Net module lead requirement in Media technology company.

Job Location: Bangalore, Whitefield

Salary- Negotiable

Job Description:
- In depth knowledge of Microsoft .NET framework (3.5 and above)
- Experienced in C#.Net development
- Substantial experience in developing WCF applications using MSMQ, SOAP, REST
- Substantial experience with IIS/ASP.NET/ASP.NETMVC /XHTML/JavaScript/CSS/ Ajax/JQuery/
- RDBMS experience (Microsoft SQL Server 2008).
- Strong object-oriented design skills, multi-threading programming
- Experience using 3rd party UI components (such as Dev Express)
- Experience working with Agile development methodologies
- Strong testing and debugging skills
- Excellent communications skills

Please send us you updated resume with following details to samidha.ambre@prismhrc.in
current sal
expected sal
total exp
relevant exp(.net)
notice period

Friday, March 21, 2014

Asp.Net developer job openings with leading final services company

Here is a .Net developer job openings with a leading finacial services company.
Experience -0.6- 7 years
Job Location- Bangalore/Mumbai

Skill:
.Net
Experience in Winforms,WCF,WPF

In case you are interested please send your updated resume with the following details to janhvi.j@randstad.in

Total Experience-
Current CTC-
Expected CTC-
Notice period -

Asp.Net technical lead job openings with Wipro technologies

Here is an Asp.Net technical lead job openinsg with Wipro technologies.

Experience: 6 - 10 years
Job Location: Bengaluru/Bangalore
Title : MS Tech Lead
Experience Level : 6 to 10 yrs
Job Location : Bangalore

Mandatory Skills:
- Asp.Net
- C#.Net
- WCF/MVC
- Framework 3.0/3.5/4.0

 If you are interested for this position, send your updated profile to sanjana.kumari@wipro.com with the following details:
 Full Name:
 D.O.B:
 Contact Details:
 Total Experience:
 Relevant Experience:
 Highest Full time qualification:
 Year of completion:
 Current Company:
 Current CTC:
 Expected CTC:
 Notice Period:

Thursday, March 20, 2014

Asp.Net technical lead job openings

Here is an Asp.Net technical lead job openings for Bangalore location.

Experience: 5 - 7 years
Job Location: Bangalore

Job Description:
- Candidate is majorly involved in web application development
- Should be good in ASP.Net with HTML & Jquery
- Should have work knowledge on SQL server 2008
- Experience in WCF would be an added advantage

If you are interested please send your updated profile along with your following details to punitha@axheleon.com

CCTC:
ECTC:
Notice Period:
Mob Number:

Asp.Net developer job openings with product based company

Here is some Asp.Net developer job openings with product based company for Bangalore location.

Location: Bangalore
Experience: 4-8 Years
Client: Product Based Client

Job Description:
Individual contributor with strong Windows programming skills using .NET /C# and Microsoft technologies.
Strong development skills in .Net 2.0/3.5/4.0, C#.Net, XML, web services and WCF.
Working knowledge & management of IIS, SQL Server 2008 and its variant, exposure to one configuration management system.
Strong skills for R&D to prototype & develop software artifacts using .Net 4.0.
Excellent analytical and logical skills and team player.
Adhere to development life cycle, process & policies.
Very good communication skills (both verbal & written) to interact with onsite clients.

Added Advantage:
Experience in OOAD, UML, and Design Patterns to participate in architectural discussions.
Experience in WPF platform or web Programming-using ASP.NET.

If you are interested for this position, then send your updated profile to: mkiran@avansys.in with following details:

Current Location:
Relocation to Bangalore: Yes/No
Notice Period:
Current CTC:
Expecting CTC:
Total IT Experience:
Experience in .Net Technologies:

Openings for .Net Developer with Cognizant

Here is a job openings in .Net for Cognizant CTS for Bangalore location.

Experience: 3 - 8 years
Job Location: Bangalore

Job Description:
- Experience in .NET; experience with C#.Net, VB.Net (Must)
- Bachelor's degree or equivalent experience
- Excellent verbal and written communication skills
- Ability to identify and resolve problems
- Proficiency with TSQL programming using SQL Server 2005, 2008, 2008R2. SQL LCR, SSRS, Replication, Service Broker, Agent Jobs
- Proficiency with Classic ASP, ASP.Net using Visual Studio 2003 - 2010, .Net 1.1 - 4.5 Framework (C# and VB.Net), Team Foundation Server.
- Proficiency in Web development (including ASP.Net, AJAX, JavaScript, jQuery)
- Experience in Web services using Windows Communication Foundation (WCF)
- Windows Presentation Foundation (WPF)
- Experience in Windows Services for process automation

If you are interested for this position, send your updated profile to Manju.D2@cognizant.com with the below details.

- Full name:
- Total Exp:
- Relevant Exp:
- Current Location:
- Current CTC:
- Expected CTC:
- Current Company:
- Notice period:
- Mobile :

Saturday, March 15, 2014

Authentication and Authorization in Asp.Net

In this article we will discuss about Authentication and Authorization in Asp.Net. Also you can check out:

- WPF Tutorial in Asp.Net-Windows Presentation Foundation

- Tutorials on WCF in Asp.Net

- Triggers in sql server 2008

Authentication:
This is the process of determining users identities and forcing those users to prove they are who they claim to be. Normally user enter credentials against a longin page and then they are authenticated against the Windows user accounts on a computer, a list of users in a file, or a back-end database.

To secure asp.net web site, you can use two types of authentication.

1- Forms Authentication:

Forms authetication works with conjunction with database where you store user information like user name or password. But you also can store user information in any where else.

To implement Forms Authentication follow these three steps:

- Set the authentication mode to forms authentication in the web.config file.

- Restrict anonymous users from a specific page or directory in your application.

- Create the login page.

2- Windows authentication:

With Windows authentication, the web server forces every user to log in as a Windows user. Here all users should have Windows user accounts on the server.

To implement Windows authentication follow below steps:

- Set the authentication mode to Windows authentication in the web.config file.

- Disable anonymous access for a directory by using an authorization rule.

- Configure the Windows user accounts on your web server.

Authorization:
Authorization is the process of determining whether that user has sufficient permission to perform a given action such as viewing a page or retrieving information from a database. But provided the user should have been authenticated before.

URL Authorization examples

Here we will discuss about some typical URL authorization examples.

You can also read:

- Asp.Net MVC4 sample application

- Ten Tips for Optimizing SQL Server Performance

- Set Enter and Esc Keys in Windows application C#.Net

The below list shows the syntax for some typical URL authorization examples:

Deny access to the anonymous account

<deny users="?" />

Deny access to all users

<deny users="*"/>

Deny access to Manager role

<deny roles="Manager"/>

Forms authentication example
<configuration>
<system.web>
<authentication mode="Forms">
<forms name=".ASPXUSERDEMO" loginUrl="login.aspx" protection="All" timeout="60" />
</authentication>
<authorization>
<deny users="aspdotnethelp24@gmail.com" />
<deny users="?" />
</authorization>
</system.web>
</configuration>

Forms Authentication in Asp.Net

In this post we will discuss about Forms Authentication in Asp.Net.

Also you can check out:

- Working with enterprise library for data access in asp.net Part-3

- Convert ArrayList to String using C#.Net

- asp.net mvc 4 tutorial

The below configuration elements show how you enable Forms authentication in Web.config.

<authentication mode="Forms">
<forms loginUrl="login.aspx" name="MyCookie" timeout="60" path="/">
</forms>
</authentication>

When you use Forms authentication, the following authorization options are avail- able to you:

Client Requested Resources
Requested resources require ACLs that allow read access to the anonymous Internet user account. (IIS should be configured to allow anonymous access when you use Forms authentication).

URL Authorization
Configure URL Authorization in Web.config. With Forms authentication, the format of user names is determined by your custom data store; a SQL Server database, or Active Directory.

If you are using a SQL Server data store:

<authorization>
<deny users="?" />
<allow users="Raju,Biju,Tamanna" roles="Manager,Sales" />
</authorization>

Explicit Role Checks
You can perform role checking using the IPrincipal interface.

IPrincipal.IsInRole("Director");

When to Use
Forms authentication is most ideally suited to Internet applications. Use Forms authentication when: Your application’s users do not have Windows accounts.

You want users to log on to your application by entering credentials using an HTML form.

Secure Socket Layer(SSL) in Asp.Net

In this post we will discuss about Secure Socket Layer(SSL) in Asp.Net.

Also you can check out:

- Exception handling in C#.Net

- WCF tutorial and example in C#.Net

- Data Binding and Graphics in WPF

- Secure Socket Layer (SSL) will provide secure communication between client and web service.

- The secure communication will be provided with encryption and decryption.

- This is strongly recommended when there is a sensitive data transmitted between client and web service. The sensitive information can be credit card number, bank account number etc.

- The encryption and decryption services will be provided by a Certification Authority (CA). The well known certification authority will be verysign, awte.

- The certification authority will provide encryption at various bit labels like 64 bit, 128 bit etc. When the bit label is high security will be more.

- The Certification Authority (CA) will charge for providing services.

- The company should purchase certificate from CA and the certificate will be provided with private and public key.

- The certificate has to be configured with the web site to implement SSL.

- The web site configured with SSL, should run on port number 443.

- The web site configured with SSL can not communicate with http protocol, it requires https protocol.

- When client makes a request to the web site, public key will be given to the client. When client submits data, encryption will take place based on public key. The encrypted data will be sent to the web server. Web server will perform decryption with the matching private key. Then the request will be processed.

The response will be encrypted based on the private key. Then it will be sent to the client system. It will decrypted with public key and result will be given to the client.

Passport authentication in Asp.Net

In this post we will discuss about passport authentication in Asp.Net. Also you can check:

- List all Stored Procedure Created and Modified in Last N Days in SQL Server 2008

- Jagged arrays in C#.Net

- Extension method in MVC

When the client is authenticated based on passport website managed by microsoft then it is called as passport authentication.

In this case client will be authenticated only single time for collection of web sites, as it is called as single sign on service. In this case database will be under control of Microsoft.

The web site can be implemented with passport authentication by performing 2 things:

- Provide authentication mode as passport.

- Install Passport SDK provided by Microsoft.

Forms based authentication in asp.net

In this post we will discuss about forms based authentication in asp.net. Also you can check out:

- Bind dropdownlist using arraylist or hashtable in C#.Net

- How to handle exception in sql server stored procedure?

- Working with enterprise library for data access in asp.net Part-3

- When the client is authenticated based on custom page by verifying credentials with database server then it is called as forms based authentication.

- The security token will be given to the client as an identity of authenticated client.

Change in web.config for modification:

 <authentication mode="Forms">
     
      <forms name="f1" loginUrl="login.aspx">
       
      </forms>
     
    </authentication>
   
    <authorization>
     
      <deny users="?"/>
     
    </authorization>

Here the name attribute will specify cookie name for maintaining security token.

By default it will be .ASPXAUTH

Here while writting code in the Login button we have to use RedirectFromTheLoginPage.

RedirectFromTheLoginPage does two things:

- It will provide requested page to the client.

- It will produce security token in the form of cookies.

Windows based authentication in asp.net

In this post we will discuss about Windows based authentication in asp.net. You can also check out:

- How to open hyperlink in new tab using jQuery or JavaScript?

- Asp.Net MVC4 Controller class example

- Array and ArrayList in C#.Net

When the authentication is implemented based on network level login then it is called as Windows based authentication.

Windows based authentication is applicable at the intranet based implementation that is private website of the organization.


You can change at the web.config level to implement Windows based authentication:

<authentication mode="Windows"/>
   
    <authorization>
   
      <allow users="user1,user2,user3"/>
     
      <deny users="*"/>
   
    </authorization>

Here apart from user1, user2 and user3 everyone else will get error.

Tutorial on Asp.Net Security

In this post we will discuss about Asp.Net security. Also you can check out:

- Advantages of WCF in Asp.Net

- Get all time zones in C#.Net

- How to disable right click by using jQuery in asp.net?

When client makes a request to the web server, web server will attach a user account to the client request under which processing of the web page will be taken. By submitting this user account web apge will access other resources on the network.

The default user account will be IUSR_SYSTEMNAME. But the user account can be changed according to the requirement. This process id called as impersonation.

The impersonation process can be implemented through web.config using Identity tag like below:

<Identity impersonate="true" username="user1" password="password" />

Authentication:
Authentication is the process of getting credentials of the client. The credentials can be user name, password security token so on.

Autherization:
Autherization is the process of verifying credentials to provide access to requested resources (web pages).

Asp.Net supports 3 types of Authentication:

- Windows based authentication

- Form based Authentication

- Passport Based Authentication

Windows Authentication with Impersonation and Windows Authentication without Impersonation

The below configuration elements show you how to enable Windows (IIS) authentication and impersonation in Web.config or Machine.config.

<authentication mode="Windows" />
<identity impersonate="true" />

When you use Windows authentication together with impersonation, the following authorization options are available to you:

Client Requested Resources
The ASP.NET FileAuthorizationModule performs access checks for requested file types that are mapped to the ASP.NET ISAPI.

Resources Accessed by Your Application
You can configure Windows ACLs on resources accessed by your application.

URL Authorization
 Configure URL authorization in Web.config. With Windows authentication, user names take the form DomainName\UserName and roles map one-to-one with Windows groups.

<authorization>
<deny user="DomainName\UserName" />
<allow roles="DomainName\WindowsGroup" />
</authorization>

Explicit Role Checks
 You can perform role checking using the IPrincipal interface.

IPrincipal.IsInRole(@"DomainName\WindowsGroup");

Enterprise Services (COM+) Roles
You can perform role checking program- matically using the ContextUtil class.

ContextUtil.IsCallerInRole("Director")

When to Use
Use Windows authentication and impersonation when:
Your application’s users have Windows accounts that can be authenticated by the server.

You need to flow the original caller ’s security context to the middle tier and/or data tier of your Web application to support fine-grained (per-user) authoriza- tion.

The disadvantages of impersonation include:
Reduced application scalability due to the inability to effectively pool database connections.

Delegation requires Kerberos authentication and a suitably configured environ- ment.

Windows Authentication without Impersonation
The below configuration elements show how you enable Windows (IIS) authen- tication with no impersonation declaratively in Web.config.

When you use Windows authentication without impersonation, the following authorization options are available to you:

Client Requested Resources
The ASP.NET FileAuthorizationModule performs access checks for requested file types that are mapped to the ASP.NET ISAPI.

URL Authorization
 Configure URL Authorization in Web.config. With Windows authentication, user names take the form DomainName\UserName and roles map one-to-one with Windows groups.

<authorization>
<deny user="DomainName\UserName" />
<allow roles="DomainName\WindowsGroup" />
</authorization>

Explicit Role Checks
You can perform role checking using the IPrincipal interface.

IPrincipal.IsInRole(@"DomainName\WindowsGroup");
When to Use
Use Windows authentication without impersonation when:
Your application’s users have Windows accounts that can be authenticated by the server.

You want to use a fixed identity to access downstream resources  in order to support connection pooling.

Bug Life Cycle in Testing

In this article we will discuss about what is Bug life cycle. You can also check my previous article on:

- What is Defect Age in software testing?

- Manual Testing interview question for HeadStrong

- QTP scripts examples

In the software development process, the bug has a life cycle. Befor closing a bug, it should go through the life cycle .The bug attains different states in the life cycle.

The different states of a bug can be summarized as follows:

1. New
2. Open
3. Assign
4. Test
5. Verified
6. Deferred
7. Reopened
8. Duplicate
9. Rejected and
10. Closed

Description of Various Stages:
1. New:
When a bug is raised for the first time, its state will be “NEW”. It means that the bug is not yet approved.

2. Open:
When a tester raised a bug, and his lead approves that the bug is genuine.Then the lead changes the state as “OPEN”.

3. Assign:
Once the lead changes the state as “OPEN”, he assigns the bug to corresponding developer or developer team. The state of the bug now is changed to “ASSIGN”.

4. Test:
Once the developer fixes the bug, he has to assign the bug to the testing team for next round of testing i.e for Re testing and Regression testing. Before he releases the software with bug fixed, he changes the state of bug to “TEST”. It specifies that the bug has been fixed and is released to testing team.

5. Deferred:
The bug, changed to deferred state means the bug is expected to be fixed in next releases. The reasons for changing the bug to this state have many factors. Some of them are priority of the bug may be low, lack of time for the release or the bug may not have major effect on the software.

6. Rejected:
If the developer feels that the bug is not genuine, he rejects the bug. Then the state of the bug is changed to “REJECTED”.

7. Duplicate:
If the bug is repeated twice or the two bugs mention the same concept of the bug, then one bug status is changed to “DUPLICATE”.

8. Verified:
Once the bug is fixed and the status is changed to “TEST”, the tester tests the bug. If the bug is not present in the software, he approves that the bug is fixed and changes the status to “VERIFIED”.

9. Reopened:
If the bug still exists even after the bug is fixed by the developer, the tester changes the status to “REOPENED”. The bug travells through the life cycle once again.

10. Closed:
Once the bug is fixed, it is tested by the tester. If the tester feels that the bug no longer exists in the software, he changes the status of the bug to “CLOSED”. This state means that the bug is fixed, tested and approved.

Tutorial on regression testing

In this article we will discuss about regression testing. You can also check on:

- Basic Unix commands useful for Testing

- Defect Management and Testing Management by using Quality Center(QC)

- QuickTest Testing Process

When Retesting was passed on modified software build then we can concentrate on regression testing to find side effects of modifications in the software.The impact of modifications is called as "Regression".

Regression Testing is required :
1. when there is a Change in requirements and modifying the code according to the requirement
2. New feature is added to the software
3. Defect fixing
4. Performance issue fix

For Regression testing we are following different methodologies:
i. Repeat all tests
ii. Repeat related tests
iii. Release software to customer to get regression information
iv. Release software as beta version.

What is Automation Testing?

In this post we will discuss about what is an automation testing, Advantages of automation testing and what are the Criteria of Automation testing?

Also you can check my previous posts on:

- What is Performance Testing?

- Top-Down and Bottom-up Approach in Integration Testing

- Tutorial on Testing Measurement and Metrics

1. Any task if performed with the help of tool or software programs is called Automation.

2. To automate one application we can use Tool + Programming Language.

3. Now a days many tools are used for automation:Ex-QTP,Selenium,WinRunner,Silk Test,RFT.....etc.

Advantages of Automation:
1. Test execution can be completed faster.

2. Testing will be consistent and effectiveness.

3. Reusabilty of automated scripts.

4. Easy of Reporting.

5. Cost of Testing will be less.

Criteria of Automation:
1. Tool support of our project.

2. Multiple releases are expected.

3. Manual will take more time.

4. Application is stable.

5. Client approval based on Project.

What is need for System Testing?

In this post we will discuss about what is the need for system testing.

You can also check my previous posts on:

- Cost Of Defect Repair in Testing

- Capgemini Manual Testing Interview Questions & Answers

- Defect Management and Testing Management by using Quality Center(QC)

From 'V'like models, an organisation follows multiple stages of development along with multiple levels testing.

Due to below issues system testing is mandatory after completion of every program testing(Unit testing) and every related two program interconnection testing(Integration testing)->

(1) User Interface everything else(consists of all user friendly facilities)

(2) User interface Consistency(order of screens).

(3) Timing related defects at software level(Performance i.e Speed in Processing).

(4) Interaction with background tasks at software level(Compatibility,Interaction....etc).

(5) Cope up with data volume,load and security failures.

(6) Special test data conditions(Leap year checking in date field)

(7) Continuity of Functionalities at software level (Registration to login to mailing to logout).

What is the difference between Error,Defect and Bug?

Here I am trying to explain what is the difference between Error, Defect and Bug in Testing.

You can see my previous posts on:

- Automated Performance Testing and its Parameters

- QuickTest Testing Process

- How to do Web Application Testing?

Error/Flaw:
If a developer finds a mistake in coding then that mistake is called as Error/Flaw.

Defect/Issue:
If a tester detected any mistake in software coding then that mistake is called as Defect/Issue.

Bug:
If a testers defect was accepted by developers to fix then the defect is called as Bug. Sometime customer facing problems in software after release that is also called as Bug.

Defect Report Template (IEEE 829)

In this post we will discuss about defect report template, also you can check out:

- What is Defect Age in software testing?

- QTP scripts examples

- Defect Management and Testing Management by using Quality Center(QC)

While test execution if any test case fails, then we are reporting those bugs in below format through defect tracking team in manual testing.

(1) Defect Id:-Unique number or Name.

(2) Defect description:-Summary of detected defect.

(3) Build Version Id:-Version number of current build.(Tester find that defect in that build version)

(4) feature/Module:-Name of the module(Tester detected this defect in that module)

(5) testcase Id:-Id of failed testcase.(Tester detected this defect while executing that testcase)

(6) Reproducible:-Yes/No
Yes:-If defect appears every time in test repetition.
No :-If defect appears rarely in test execution.

(7) If Yes,attach corresponding failed test case.

(8) If No attach corresponding failed testcase and screen shots.

(9) Severity:-The seriousness of defect with respect to functionality
High(Show Stopper):-Without fixing this defect tester not able to continue testing.
Medium:-Able to continue but mandatory to fix.
Low:-Able to continue testing but may or may not to fix.

(10) Priority:-The importance of defect fixing with respect to customer intrest.(High,Medium,Low)

(11) Test Environment:-Used h/w and s/w while detecting this defect.

(12) Status:-New/Reopen
New:-Reporting first time.
Reopen:-Re-reporting.

(13) Reporting By:-Name of the Test engineer/Test executor.

(14) Reporting On:-Date and Time.

(15) Send To:-Mail id of Defect Tracking Team(DTT)

(16) Reviewed By:-Test Lead

(17) Suggested Fix(Optional):-Tester suggestion to fix this defect.

Tips For test case design

In this post we will discuss about some tips on Test case design.

You can also check my previous articles on:

- What is Performance Testing?

- Top-Down and Bottom-up Approach in Integration Testing

- Selenium interview questions and answers

(1) A test case must be designed to be reusable i.e.It should be executed on future versions of software also.

(2) A test case must consists constant results to different testers,while executingon software under testing.

(3) A test case name must start with Verify/Validate/Check.

(4) A test case must be specific to the testing object(field)or operation in software under testing.

(5) A test case must be divided into positive or negative.

(6) A test case must be divided into sub test cases to keep them as short.

(7) A test case contains 10 to 15 test steps procedure as maxium.

(8) The test case must specify defect id when the test case became failed.

(9) A test case must be reviewed by test lead along with BA/SA to ensure the coverage of functionality in that test case.

(10) A test case must be specify what that tester wrote and what tester has to perform and the response of software under testing.

(11) A test case must be approved by customer site representatives or PM.

What is Performance Testing?

In this post we will discuss about what is performance testing.

You can check my previous testing articles on:

- What is Defect Age in software testing?

- QTP scripts examples

- Automated Performance Testing and its Parameters

In Performance testing we are checking we are concentrating on speed in processing of  a software by checking below factors:

- Execution of as software under customer expected configuration and customer expected load to calculate speed in processing, is called as Load Testing. Here load means number of concurrent users using our software.

- Execution of our software under customer expected configuration and more than customer expected load to estimate reliability is called as Stress Testing.

- Execution of our software under customer expected configuration and sudden increments of load to estimate reliability is called as Spike Testing.

- Execution of our software under customer expected configuration and continuous load long time to estimate durability is called as Endurance/Durability/ Longuity Testing.

Top-Down and Bottom-up Approach in Integration Testing

While doing Integration testing we are following Top-down and Bottom-up approach.

Also check out my previous posts on:

- QuickTest Testing Process

- Cost Of Defect Repair in Testing

- How to do Web Application Testing?

Top-Down Approach:-
Integration of main module with some of the stub modules is called as Top-down approach.In this case we are using temporary programs instead of under constructive Stub modules.By doing this we can stop the control to the module which is under construction.


Bottom-Up Approach:-
Integration of sub modules without main module is called as Bottom-Up approach.In this case instead of main module we are using a temporary program called as driver.Here we are using driver to send the control or to connect to the next module.

Tutorial on Testing Measurement and Metrics

Here is a tutorial on Testing Measurement and Metrics. Also you can check out:

- Basic Unix commands useful for Testing

- Defect Management and Testing Management by using Quality Center(QC)

- Automated Performance Testing and its Parameters

1. Quality Assesment Measurement:
These measurements are used by Project manager during testing to access quality of SUT.
i. Defect Arrival Rate
ii. Sufficiency(Review of remaining testing time sufficiency for remaining testing)
iii. Defect Priority System
       a. Important to Customers
       b. Organisation Trends

2. Test Management Measurements:
These measurements used by test lead to estimate the effort of testers during testing.
i. Test Status:
      a. No of testcases executed.
      b. No of testcases in execution.
      c. No of testcases yet to execute.

ii. Pending defects(Quality Gap)
      a. No of testcases detected-No of defects fixed.

iii. Tester Efficiency:
      a. No of testcases executed per day.
      b. No of defects detected per day.
      c. No of testcases prepared per day.

3. Tester Capability improvement measurements:
These measurements used by test enginees to improve their testing skills
a. Defect Removal efficiency(DRE)=A/A+B
Here A=No of deffects detected by tester during testing.
B=No of defects faced by Customers

4. Test Effectiveness:
a. No. of test cases prepared per day in previous projects and no. of test cases prepared per day for recent projects.

 b.No. of test cases executed per day in previous project and no. of test cases executed per day in recent project.

Selenium interview questions and answers

Here are few Selenium interview questions and answers. Also you can check:

- Manual testing interview questions and answers

- What is Defect Age in software testing?

- QTP scripts examples

1. What are the set of tools available in Selenium?
Selenium has four tools - Selenium IDE,Selenium RC,selenium Grid,Selenium Web Driver.

2. What is Selenium 1.0 and its advanges over Selenium IDE?
  i. Selenium 1.0 or Selenium RC(Selenium Remote Control)is a library which is supporting many languages.
  ii. Selenium IDE is incapable of executing tests in browser other than Mozilla Firefox.
  iii. And also the programmatical limitations of language Selenese used in Selenium IDE.

3. What is Selenium 2.0?
  i. Selenium 2. is the latest offering of Selenium.It is known as Web Driver.
  ii. It provides API's better than Selenium 1.0
  iii. It supports more UI operations.
  iv. It is not suffering from Java Script security restrictions which is available in Selenium 1.0.

4. What are the element locators available in Selenium to locate elements on the web page?
  The element locators are:-
    i. Html id
    ii. Html name
    iii. XPath locator
    iv. Css Locator

5. What are the verification points available with Selenium?
  Three types of verification points are available in selenium:
    i. Check for page Title
    ii. Check for Certain text
    iii. Check for certain element(Table, dropdown text box etc)

6. What is XPath?
 XPath is a way to navigate in XML document.It is also used to identify elements in a web page.

7. What is the difference between type and typeKeys commands?
type commands simulates enter operations at one go while type Keys simulates Keystroke key by key.typekeys could be used when typing data in textbox which bring options because sch opertions are not usually simulated using type command.

Manual testing interview questions and answers

Here are some manual testing interview questions and answers. You can also check out some articles on:

- Cost Of Defect Repair in Testing

- Capgemini Manual Testing Interview Questions & Answers

- QTP scripts examples

1. What is Verification and Validation?
- Verification: The process of evaluating software to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase.

- Verification is ensuring that the product has been built according to the requirements and design specifications.

- Validation: The process of evaluating software during or at the end of the development process to determine whether it satisfies specified requirements.

- Validation ensures that the product actually meets the user's needs, and that the specifications were correct.

2. What is the difference between a test plan and a QA plan?
A test plan tells what needs to be done to test the product and includes how quality control will work to identify errors and defects. On the other hand a QA plan  is more concerned with prevention of errors and defects rather than testing and fixing them.

3. How to test an application if the requirements are not available?
If requirements documentation is not available for an application, a test plan can be written based on assumptions made about the application.  Assumptions that are made should be well documented in the test plan.

4. What is a peer review?
Peer reviews are reviews conducted among people who are working in a same team.  For example, a test case that was written by one QA engineer may be reviewed by a developer and/or another QA engineer.

5. Give an example of what can be done when a bug is found.
When a bug is found, it is a good idea to run more tests to be sure that the problem witnessed can be clearly detailed. For example, let say a test case fails when Animal=Cat and.  A tester should run more tests to be sure that the same problem doesn’t exist with Animal=dog.  Once the tester is sure of the full scope of the bug can be documented and the bug adequately reported.

6. Who writes test plans and test cases?
Generally test plans are typically written by the quality assurance lead while testers usually write test cases.

7. Is quality assurance and testing the same?
Quality assurance and testing is not the same.  Testing is considered to be a subset of QA. QA is should be incorporated throughout the software development life cycle while testing is the phase that occurs after the coding phase.

8. What is a negative test case?
Negative test cases are created based on the idea of testing in a destructive manner.  For example, testing what will happen if inappropriate inputs are entered into the application.

9. What are the functional testing types?
The following are the types of functional testing:

        Compatibility
Configuration
Error handling
Functionality
Input domain
Installation
Inter-systems
Recovery

10. What is random testing?
Random testing involves checking how the application handles input data that is generated at random. Data types are typically ignored and a random sequence of letter, numbers, and other characters are inputted into the data field.

11. What is the difference between Quality Control and Quality Assurance?
Quality control (QC) and quality assurance (QA) are closely linked but are very different concepts. While QC evaluates a developed product, the purpose of QA is to ensure that the development process is at a level that makes certain that the system or application will meet the requirements.

12. What is the difference between regression testing and retesting?
Regression testing is performing tests to ensure that modifications to a module or system do not have a negative effect on previous releases.  Retesting is merely running the same testing again. Regression testing is widely asked manual testing interview questions and hence further research to understand this topic is needed.

13. What is the difference between bug severity and bug priority?
Bug severity refers to the level of impact that the bug has on the application or system while bug priority refers to the level of urgency in the need for a fix.

14. What is the difference between system testing and integration testing?
For system testing, the entire system as a whole is checked, whereas for integration testing, the interaction between the individual modules are tested.

15. Explain the term bug.
A bug is an error found while running a program. Bug fall into two categories: logical and syntax.

What is Defect Age in software testing?

In this post we will discuss about defect age in software testing. Also you can check out my previous posts on:

- Automated Performance Testing and its Parameters

- QuickTest Testing Process

- How to do Web Application Testing?

Defect Age can be measured in two ways in the world of Software testing:
      1. Time
      2. Phases

DEFECT AGE (In terms of TIME):
i. Defect Age is the difference between the date a defect is detected and the current date (incase the defect is still open) or the date the defect was fixed (incase the defect is already fixed).
ii. The 'defects' are confirmed and assigned (not just reported).
iii. Dropped defects are not counted.
iv. The difference in time can be calculated in hours or in days.
v. 'Fixed defect' means,the defect is verified and closed.Not only just ‘fixed’ by the developer.
vi. Defect Age in Time = Defect Fix Date (OR Current Date) – Defect Detection Date
vii. Normally, average age of all defects is calculated.
viii. Example: If a defect was detected on 01/01/2013 10:00:00 AM and closed on 01/04/2013 12:00:00 PM, the Defect Age is 74 hours.

DEFECT AGE (In terms of PHASES):

i. Defect Age is the difference in phases between the defect injection phase and the defect detection phase.
ii.‘Defect injection phase’ is the phase in the software life cycle where the defect was introduced.
iii. ‘Defect detection phase’ is the phase in the software life cycle where the defect was identified.
iv. Defect Age in Phase = Defect Detection Phase – Defect Injection Phase
v. Example:Consider that the software life cycle has the following phases:

                  a. Requirements Gathering
                  b. High-Level Design
                  c. Low level Design
                  d. Coding
                  e. Unit Testing
                  f. Integration Testing
                  g. System Testing
                  h. Acceptance Testing

If a defect is identified in System Testing and the defect was introduced in Requirements Development, the Defect Age is 6.

Manual Testing interview question for HeadStrong

In this post we will discuss about some manual testing interview questions. Also you can check out my previous posts on:

- QTP scripts examples

- Basic Unix commands useful for Testing

- Defect Management and Testing Management by using Quality Center(QC)

1. Brief about yourself?

2. What is Defect life cycle?

3. What is the use of writing test plan document?

4. What are the contents of a test plan document?

5. What is the difference between inner join and Left outer join?

6. Write a sql query to retrieve second highest salary in an employee table?

7. Write a vb script to display sum of two numbers.

8. Write a vb script to check entered number is prime or not?

9. Where you want to see after 3 years?

10. Why you want to join Headstrong?

11. What are strengths?

12. What are the challenges you faced in your testing career.

13. What are the challenges you faced while doing automation testing?

QTP scripts examples

In this post we will write some QTP scripts. Also you can check my previous posts on:

- Basic Unix commands useful for Testing

- Cost Of Defect Repair in Testing

- Capgemini Manual Testing Interview Questions & Answers

1- Leap year or not?

Dim Year
Year=inputbox("Enter year")
If year mod 4=0 Then
msgbox "Leap year"
else
msgbox"Not leap year"
End If

2- Even or odd number

Dim number
number=input box("Enter number")
If number mod 2=0 Then
msgbox "Even number"
else
msgbox"odd number"
End If

3- To add 2 number

Dim num1,num2,sum
num1=inputbox("Enter number")
num2=inputbox("Enter number")
sum=cint(num1)+cint(num2)//Cint is used here for string conversion
msgbox ("Sum is"& Sum)

4- To calculate Simple Intrest

Dim p,t,r,si
p=inputbox("Enter number")
t=inputbox("Enter number")
r=inputbox("Enter number")
si=(p*t*r)/100
msgbox ("Simple intrest  is"& si)

5- Reverse a string

StrtoReverse = inputbox("Enter the String:")
StrLenCount = Len(StrtoReverse)

For i = 1 to StrLenCount

StrReversed = Mid(StrtoReverse,i,1) & StrReversed

Next

Msgbox StrReversed

6- Find how many  "G" are available in the word “Google”.

Const ForReading = 1
Set fso = CreateObject( "Scripting.FileSystemObject" )
Set textFile = fso.OpenTextFile( "D:\sample.txt",1)
contents = textFile.ReadAll
textFile.Close
Set rgxp = New Regexp
rgxp.Pattern = "m"
rgxp.IgnoreCase = True' To ignore upper case and lower case
rgxp.Global = True
Set matches = rgxp.Execute( contents )
Print "Number of G: " & matches.Count

Basic Unix commands useful for Testing

In this post we will discuss about some basic unix commands which are useful for Testing. Also you can check out my previous posts on:

- Defect Management and Testing Management by using Quality Center(QC)

- Automated Performance Testing and its Parameters

- How to do Web Application Testing?

Basic Commands:
1. $logname: Displays the current user name.

2. $pwd: Displays current working directory.

3. $clear: Clear the screen

4. $exit: logout from the current user.

5. $date: Displays system date and time.

6. $Who am i: Displays current username,terminal number,date and time at which you logged into the system.

7. $who: To display the information about all the users who have logged into the system currently.
    i.e ech user login name,terminal number,date and time that person logged in.

8. $finger: Displays complete information about all the users who are logged in.

9. $cal: Displays previous month,current month and next month calender.

10. $cal year: Displays the given year calender.

11. $cal month year: Displays the given month calender only.

12. #init: To change system run levels.
      i. #init 0: To shut down the system
     ii. #init 1: To bring the system to single user mode.
    iii. #init 2: To bring the system to multi user mode with no resource shared.
     iv. #init 3: To bring the system multi user mode with source shared.
     v. #init 6: Halt and reboot the system to the default run level.

13. $banner "demo": It prints a message in large letters.

Create files:
There are two commands to create files: touch and cat

1. $Touch filename: it creates zero byte file size.
Note: Touch does not allow us to store anything in a file.It is used for to create several empty files quickly.

2. $cat> filename
     i.eg. $cat> demo:To create a file.
     ii.eg. $cat>>demo: To append data to the file.
     iii.eg. $cat file1 file2 file3 > file4
The above command would create file4 which contains contents of file1 followed by file2 and followed by  that of file3. i.e it concatenates file1,file2 and file3 contents and redirects to file4. If file4 already  contains something it would be over written.

3. $cat< filename (or)$cat filename:To open a file.

Removing files:
rm command is used to remove a file.
- $rm filename: It removes the file.
- $rm -i filename:It asks confirmation before deleting the file.
- $rm file1 file2 file3: It removes three files.
- $rm*:It removes all files in current directory.

Defect Management and Testing Management by using Quality Center(QC)

In this post we will discuss about  defect management and test management using QC . Also you can check out my previous posts on:

- Automated Performance Testing and its Parameters

- QuickTest Testing Process

- Capgemini Manual Testing Interview Questions & Answers

Defect Management and Testing Management by using Quality Center(QC):

Quality Center is a web based system for software quality testing across wide range of IT and application environments.It is designed to optimize and automate key quality activities, including requirements, test and defects management,functional testing and business process testing.It includes industry leading products such as Mercury Test director, QTP, Win Runner, and the new Mercury Business Process testing.

Four Primary functions of Quality Center:
  1. Capturing Business requirements.
  2. Building test cases and test plans.
  3. Creating test sets and test results in Test Lab.
  4. Tracking and managing defects.

1. Capturing Business requirements:
     - Group requirements by business function.
     - Link requirements to test cases and defects.
     - Import/Export facility from/to MS Word and/or MS Excel.
     - View defects associated with a requirement.

2. Building test cases and test plans:
     - Define test parameters (Add/Delete/Modify test steps to confirm with business rules.)
     - Validate test coverage for all requirements.
     - Record expected and actual results fo each test step.
     - Provide a centralized repository that can store all automated tests.
     - Integrate with Win Runner/QTP for automated testing.

3. Creating test sets and test results in Test Lab:
     - Group test scripts to achieve testing goals (module functionality).
     - Schedule tests.
     - Record Pass/fail results for each test step.

4. Tracking and managing defects:
     - Add and Track defects.
     - Follow up with the defect management life cycle.
     - Links with Email systems for defect notification.
     - Save graphs in MS Word or MS Excel.
     - Generate reports as MS Word documents.

Automated Performance Testing and its Parameters

In this post we will discuss about  Automated Performance Testing and its Parameters . Also you can check out my previous posts on:

- QuickTest Testing Process

- How to do Web Application Testing?

- Cost Of Defect Repair in Testing

Automated Performance Testing is a discipline that leverages products,people,and processes to reduce the risks of application,upgrade,or patch deployment.

As its core,automated performance testing is about applying production workloads to pre-deployment systems while simultaneously measuring system performance and end user experience.

Parameters to be considered in Performance Testing:
Below are the parameters considered during Performance testing:
- Response Time (Resp Time)
- Execution Time(Exec Time)
- Throughput
- Server Resource Utilization
- Network Performance

Response Time:
The time taken from request to the time when we get the first bit of response.

Execution Time:
The time from the request to the time when complete response is received.

Through Put:
Amount of work done/sec i.e. data processed per second or no of requests addressed per second.

Server Resource Utilization:
How the memory and processor resources are used.

Network Performance:
The delays in the network are monitored.

Factors affecting Performance of the application:
Performance of any application will be influenced by below factors:
- Multi User (Concurrent Users..working at the same time)
- Data Volume (Number of records in DB)
- Functionality/Complexity of Activity

QuickTest Testing Process

In this post we will discuss about  Quick Test Process . Also you can check out my previous posts on :

How to do Web Application Testing?
   
Cost Of Defect Repair in Testing

Capgemini Manual Testing Interview Questions & Answers

The Quick Test testing process consists of seven main phases:
1. Preparing to record:
Before you record a test,confirm that your application and Quick Test are set to match the needs of your test.

Make sure your application displays elements on which you want to record, such as toolbar or a special window pane and that your application options are set as you expect to the purpose of your test.

2. Recording a session on your application:
As you navigate through your application or web site, Quick Test graphically displays each step you perform as a row in the Keyword view. A step is any user action that causes or makes a change in your application, such as clicking a link or image, or entering data in a form.

3. Enhancing your Test:
Inserting checkpoints in your test lets you search for aspecific value of a page, object, or text string, which helps you determine weather your application or site is functioning correctly.

Broadening the scope of your test, by replacing fixed values with parameters, lets you check how your application performs the same operations with multiple sets of data.

4. Debugging your Test:
You debug a test to ensure that it operates smoothly and without interruption.

5. Running your Test:
You run a test to check the behavior of your application or web site. While running, Quick Test opens the application,or connects to the web site, and performs each step in your test.

6. Analyzing the results:
You examine the test results to pinpoint in your application.

7. Reporting defects:
If you have Quality Center installed,you can report the defects you discover to a database. Quality Center is the Mercury test management solution.

How to do Web Application Testing?

In this post we will discuss about Web Application testing which are useful for Testing. Also you can check out my previous posts on:

- QuickTest Testing Process

- How to do Web Application Testing?

- Cost Of Defect Repair in Testing

Web Application Testing:
Testing which goes beyond the basic functional and system testing of the computer science world, to include tests for availability, performance/load, scalability, usability, compatibility and links.
- Optimize testing with through risk analysis of the site to identify and prioritize key areas and testing asks.
- Consider interaction between HTML pages TCP/IP communications, internet connections, firewalls, and applications that run on the server side.
- Testing ensures that reliability, accuracy and performance of web based applications, including web services.
- Simulate a live application environment if required.Characteristics of Web app Errors:
- Many types of Web App tests uncover problems evidenced on the client side using as specific interface (e.g., may be an error symptom, not the error itself)
- It is hard to determine weather errors are caused by problems with the server, the client, or the network itself.
- Some errors are attributable to problems in the static operating environment and some are attributable to dynamic operating environment.

Testing Web Apps for Errors:
- Web App content model is reviewed to uncover errors.
- Interface model is reviewed to ensure all use cases are accommodated.
- Design model for Web App is reviewed to uncover navigation errors.
- User Interface is tested to uncover presentation errors and / or navigation mechanics problems.
- Selected functional components are unit tested.
- Navigation throughout the architecture is tested.
- Web App is implemented in a variety of different environmental configurations and the compatibility of Web App with each is assessed.
- Security tests are conducted.
- Performance tests are conducted.

Web Testing Process:
- Content testing: tries to uncover content errors.

- Interface testing: exercises interaction mechanisms and validates aesthetic aspects of user interface.
- Navigation testing: makes use of use-cases in the design of the test cases that exercise each usage scenario against the navigation design.

- Component testing: exercises the web app content and functional units.

- Configuration testing: attempts to cover errors traceable to a specific client or server environment.

Testable Web App interface Mechanisms:
- Links(each link is listed and tested)
- Forms(check labels,field navigation,data entry,error checking,data transmission meaningful error messages)
- Client side scripting(black box and compatibility tests)
- Dynamic HTML(Correctness of generated HTML and compatibility tests)
- Client side pop up windows(Proper size and placement of pop up, working controls,consistent with aesthetic appearance of web page)
- CG I Scripts(black box,data integrity, and performance
testing)
- Cookies
- Application specific interface mechanics.

Cost Of Defect Repair in Testing

In this post we will discuss about  Cost of defect repair. Also you can check out my previous posts on:

- Basic Unix commands useful for Testing

- Cost Of Defect Repair in Testing

- Capgemini Manual Testing Interview Questions & Answers

Cost Of Defect Repair:
During software projects, you can hear widely different attitudes towards fixing defects,depending upon priorities and motivations:

"We will fix that when we have time. In the mean time,just keep developing!How can you possibly tell how much it will cost to fix later:" - An engineer manager, eager  to continue software development.

"Let's find all the defects before system test.The customer will wait for the product."-An Engineering manager, concerned that shipping a product with defects would prevent customers from buying the product.

The choice to fix or not depends upon many factors:the type of product;the risks associated with shipping known or unknown defects; your development processes; and the cost of fixing the defect.

The easiest time to calculate this cost is during the system test time, when people are 100% dedicated to finding defects.To begin, count the number of fixes made.You know how many people were involved, the cost per person-day, and the duration of system test.The total can be surprisingly high,which is why the fix value is so important.

 Average cost to fix a defect=((Number of people * Number of days)/(Number  of fixed defects))*cost per person day

Capgemini Manual Testing Interview Questions & Answers

In this post we will discuss about my experience while attending Capgemini Interview for Manual testing. Also you can check out my previous posts on:

-  Honeywell testing interview questions

-

-

1. What are the types of Priority and Severity?
 "Priority" of a bug means how fast it has to be fixed. Most of the time "High Severity" bug are marked as “High Priority” bugs and also it should be resolved as early as possible.The Priority status of a bug is set by the tester to the developer mentioning the time frame to fix a defect. If priority of a bug is "high" then the development team has to fix it at the earliest.

"Severity" means how severe it is affecting the functionality of an application.It says how bad the bug is for the system. Severity type is defined by the tester based on the written testcases and functionality.Based on the seriousness of the bug severity is assigned to defect.

2. What is Log sheet and what are the components in it?
A log sheet is a defect report in which we are attaching server logs,behavior of the application,request and response of the remote server when the defect has occurred .A log sheet is a very useful document for the developers while replicating a defect for fixing.Log sheet also consists of lines of code according to the series of events that made the defect to occur.

3. Give some example for high severity and low priority defect?
The download Quarterly statement is not generating correctly from the website & user is already entered in quarter in last month. So we can say such bugs as High Severity, this is bugs occurring while generating quarterly report. We have time to fix the bug as report is generated at the end of the quarter so priority to fix the bug is Low.

System is crashing in the one of the corner scenario, it is impacting major functionality of system so the Severity of the defect is high but as it is corner scenario so many of the user not seeing this page we can mark it as Low Priority by project manager since many other important bugs are likely to fix before doing high priority bugs because high priority bugs are can be visible to client or end user first.

4. In an application currently in production, one module of code is being modified. Is it necessary to re-test the whole application or is it enough to just test functionality associated with that module?
Answer to this ,You will have to test the functionality of that module as well as the other modules. But you can differentiate on the stress to be given on the module to be tested.

Ex: If Module A is modified, Module B is depending on module A, and Module C is a general module independent of module A.So in this case you will test the module A in depth to all test cases. Then your next stress will be on module B. Wait now what about module C? You will have to test this module as well but may be with less stress because module C is not depend on module A but may be depend on module B. Again if you are a white box tester you probably know which modules will get affected and which modules should be tested. But as a black box tester you will need to do regression testing as well.

5. What are you going to do if there is no Functional Spec or any documents related to the system and developer who wrote the code does not work in the company anymore, but you have system and need to test?
In this case fist you will need to do the exploratory testing of the product. In this testing you will come to know the system and its basic workflow. In exploratory testing you can also find some ‘blocker’ bugs that cause system to be crash.After that you can able to write test cases for this.Also you can prepare a query sheet and ask all the queries to the BA and developers.

Asp.Net lead openings for Bangalore location

Here is a Asp.Net lead position for Bangalore location.

Position: .Net Lead

Location: Bangalore (HSR Layout)

Years of Experience: 4+ years

Job Description: 
- Should have worked on Product Development & strong in web development

- Should worked on Asp.Net, C#.Net, JavaScript

- Good to have MVC or WCF

- Ability to think out of the box and implement robust technical solutions to business problems is expected from this role

If you are interested, Kindly send us your resume to neelima@nalashaa.com with below details:

Current CTC:
Expected CTC:
Notice Period:

Thursday, March 13, 2014

View state in Asp.Net

In this post we will discuss about view state in Asp.Net.

Also you can check my previous posts on:

- Session management in Asp.Net

- Advantages of WCF in Asp.Net

- WPF Tutorial in Asp.Net-Windows Presentation Foundation

- View state is one of the popular and simple state management technique.

- View state uses a hidden field that ASP.NET automatically inserts in the final, rendered HTML of a web page.

- It is very much helpful to store information that is used for multiple postbacks in a single web page.

- We can enable and disable view state at control level as well as page level.

You can use the EnableViewState= "True/False"; to enable or disable viewstate for control level or page level.

- Example to store value:
ViewState["UserName"] = "AspDotNetHelp";

To retrive the value we can write like this:

string currentUserName = ViewState["UserName"].ToString();

But the view state data is not secure, because Asp.Net uses a Base64 string.

- But if your view state data contains secret data then you can encrypt that data by using

ViewStateEncryptionMode property at page level or application level like below:

Page Level:
<%@Page ViewStateEncryptionMode="Always" %>

Website level:
<configuration>
<system.web>
<pages viewStateEncryptionMode="Always" />
</system.web>
</configuration>

Cross-page posting in Asp.Net

In this post we will discuss about cross page posting in asp.net.

You can also check my previous posts on:

- Data Binding and Graphics in WPF

- How to download file in C#.Net?

- How to disable right click by using jQuery in asp.net?

- Cross page posting helps send data from one page to another in Asp.Net. This helps the postback mechanism.

- This can be achieved by a proerty name as PostBackUrl, which is defined by the IButtonControl interface. Its available for controls like ImageButton, LinkButton, and Button etc.

- To use cross-posting, you simply set PostBackUrl to the name of another web form. When the user clicks the button, the page will be posted to that new URL with the values from all the input controls on the current page.

Example:
<asp:Button runat="server" ID="btnClick" PostBackUrl="Page2.aspx" Text="Cross-Page Postback" />

To retrieve the value in the second page, write like below:

protected void Page_Load(object sender, EventArgs e)
{
if (PreviousPage != null)
{
string previousPageTitle = PreviousPage.Title;
}
}

This page is meant for single page only.

Query String in Asp.Net

In this post we will discuss about Query String in Asp.Net. Also you can check out:

- Export gridview data to excel sheet in Asp.net

- Working with enterprise library for data access in asp.net Part-3

- Bind dropdownlist from enum in Asp.Net

Like view state and cross page posting, query string is also a state management technique. This helps us to send data from one page to other page.

Here the data will be send through the browser URL.

Example:
Below is a way to send the data to a different page.

Response.Redirect("ArticleDetails.aspx?ArticleID=1");

Similarly below is a ways, we can retrieve the query string data:
string articleID = Request.QueryString["ArticleID"];

We can also send multiple parameters by using query string like below:

Response.Redirect("ArticleDetails.aspx?ArticleID=10&Category=Asp.Net");

Query string is very much lightweight, so there will be very less burden on the server. But there are few limitations in this also:

Limitations of Query String:
- Information is limited to simple strings, which must contain URL-legal characters, since its passed through browser url.

- Information is clearly visible to the user and to anyone can trap the values.

- The user also can modify the value and can send the new values to the server.

- Most of the browser has limitation on the length of the url (1 KB to 2KB), so we can not send large amount of data.

How to store custom objects in view state in asp.net?

In this post we will discuss how we can store custom objects in view state in asp.net.

You can also check my previous posts on:

- asp.net mvc 4 tutorial

- Bind gridview using datareader in asp.net

- Generate WCF Proxy using SvcUtil.exe

To store an object in view state, the object must be serializable means, ASP.NET must be able to convert it into a stream of bytes so that it can be added to the hidden input field in the page. This process is known as serialization.

To make your objects serializable, you need to add a Serializable attribute before your class declaration.

[Serializable]
public class Employee
{
private string firstName;
private string lastName;

public string FirstName
{
get { return firstName; }
set { firstName = value; }
}

public string LastName
{
get { return lastName; }
set { lastName = value; }
}
public Employee(string firstName, string lastName)
{
FirstName = firstName;
LastName = lastName;
}
}

Here the above class becomes a serializabled class, since we write the [Serializable] attribute in the beginning of the class.

Employee objEmployee = new Employee("Bijay", "Kumar");
ViewState["NewEmployee"] = objEmployee;

Here the Employee object will be stored in the view state.

To retrive the custom object from the view state write like below:

Employee  obj = (Employee)ViewState["NewEmployee"];

Remember If the Serializable attribute isn’t present, the class isn’t serializable, and you won’t be able to place instances of it in view state.

Tutorial on Cookies in asp.net

Here we will discuss what is a cookie, as well as the types of cookies available in asp.net. You can also:

- Exception handling in C#.Net

- How to get body height using jQuery in Asp.Net?

- How to handle exception in sql server stored procedure?

- A cookie can be defined as small amount of memory used by the web server within the client system.

- The cookie are requested to maintain personal information of the client. Information like user name, no of visits, last visited date etc are get stored.

There are 2 types of cookies:
1. Inmemory cookie
2. Persistant cookie

Inmemory Cookie:
- When the cookie is maintained within browser process memory then it is called as inmemory cookie. This is very much temporary which will be erased when the browser is closed.

Create cookie:
HttpCookie obj = new HttpCookie("nameofcookie");
obj.Value = "100";
Response.AppendCookie(obj); //Here cookie will be send to the browser.

Reading cookie:
HttpCookie obj;
obj = Request.Cookies["nameofcookie"];
if(obj !=null)
{
string value = obj.Value; //This will return the value.
}

Persistent cookie:
- When the browser maintains cookie on to harddisk memory then it is called as persistant cookie.
- This will have a life time, when the cookie will earse.

Create cookie:
HttpCookie obj = new HttpCookie("nameofcookie");
obj.Value = "100";
obj.Expires.AddDays(5);//Cookie will expire after 5 days
Response.AppendCookie(obj);

Reading cookie:
HttpCookie obj;
obj = Request.Cookies["nameofcookie"];
if(obj !=null)
{
string value = obj.Value; //This will return the value.
}

Cookieless session in Asp.Net

In this post we will discuss what is cookieless session in Asp.Net. Also you can check out my previous posts on:

- List all Stored Procedure Created and Modified in Last N Days in SQL Server 2008

- How to add Eval for hyperlink in gridview in asp.net?

- Session management in Asp.Net

- When the browser is disabled with cookies then the session for the client will not be maintained. Because session id will be sent to the client browser in form of inmemmory cookie.

- The problem has been overcome in Asp.Net by supporting cookieless session.

- When the session id is appended to the URL in the form of Query string then it is called cookieless session.

- To use cookieless session we have to modify in the web.config file like below:

<SessionState -------

Cookieless="ture/false" timeout="20" />

The URL looks like below:

http://-----\(12AB----------)

last is the session id which is appended as querystring parameter.

- When the client makes changes with the URL the session will be lost. This makes a new session to be created for the client.

How to know if browser supports cookie or not:

Request.Browser.Cookies

If it returns true means browser supports cookie and if it returns false then browser does not support cookie.