a:6:{i:0;s:14555:"				<section id="middle">
				<div class="wrap" id="bodyFormatNT">
				<div class="row1 dt columns23"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls detail_pm_15"><!--MIDDLE ROW1 COL-2 STARTS-->
				
									<div class="h1"><h1>Job openings for bvt test engineer in bangalore</h1></div>
					<p class="breadcrumb ar uu small"> <a href="http://www.svsjobs.in/">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.svsjobs.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>  			
											
					<b class="ffv p2px">&rsaquo;</b> Job openings for bvt test engineer in bangalore</p>
									<div class="pt10px">
				<div class="xxxlarge fw6 dif">Bvt Test Engineer</div>
									<p class="mt7px fw6">Bangalore</p>
									
				<br>
				<p class="aj mt7px">Roles and Responsibilities<br />
will Be Expected to Build Automated Bvt Functional Testcases and Tests Across the Solution.<br />
create Automated Test to Test all Components in Isolation, Using Mocking, Stubbing and Service Virtualisation Tools like Mountebank.<br />
provide Manual Testing for Bvt Scenarios Outside of Automation.<br />
desired Skills and Experience<br />
has Proven Experience Building Automated Functional, Bvt, Integration and Regression Tests<br />
understand Functional, Bvt, Integration and Regression Testing in the Context of Unit, Integration and System Validation Testing Has Proven Automation Experience<br />
significant Utilisation of Test Automation Frameworks such as Tosca, Selenium, Webdriverio, Jest, Enzyme, Mocha, Cucumber, Appium.<br />
2+ Years’ Experience Using Tosca is Preferred<br />
significant Utilisation of Programming Languages such as Javascript (including Frameworks like React or Node.js), Java, Python. Use of Techniques like Bdd and Tdd.<br />
experience Testing with Apis with Graphql and Restful Styles of Communication.<br />
experience in Clean Code Techniques, Coding Standards and Refactoring Code for Better Testability<br />
ability Conduct Code Reviews and Peer Programming with Test Automation Community<br />
non-functional Testing Experience Including Performance, Security, Accessibility, Internationalisation.<br />
experience in the Application and Customisation of Continuous Integration/deployment Process and Tools such as Jenkins, Bamboo.<br />
experience in Cloud Architecture, Development, and Testing in Aws, Google Cloud Platform or Azure.<br />
experience with Docker, Kubernetes, Istio or other Containerisation Platforms.<br />
consulting and Client Management Experience, Change Management, and Implementation Management<br />
excellent Communication Skills<br />
excellent Understanding of Functional Testing Principles<br />
excellent Understanding of Integration Testing Principles<br />
excellent Understanding of Regression Testing Principles</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">5 - 8 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 7  Lac  50 Thousand  To  8  Lac  50 Thousand  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - QA / Testing / Documentation</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Qualification</td>
					<td class="p5px">Other Bachelor Degree</td>
					</tr>					
										<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">BVT Test Engineering</span>
												<span class="bdr dib p2px10px mr5px mt2px"> BVT Testing</span>
											</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div class="pt20px">
				<p class="large fw6">About Company</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">K. Senthil</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">Plot no. 48, Parsuvanath Avenue, ALS Nagar, Madambakkam, Chennai</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">7977587717 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:info@svsjobs.in"> info@svsjobs.in </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="875341">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="903651"><input type="hidden" name="subject" value="Applied for Bvt Test Engineer">
					</form>
					</div>
			
									</div>
				</div>			
				
				<!--MIDDLE ROW1 COL-2 ENDS--> 
				</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic">
				<div class="mt10px">
									<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-chennai.htm" title="Jobs in Chennai">Chennai</a> <b class="alpha50 bn small">(59)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-bangalore.htm" title="Jobs in Bangalore">Bangalore</a> <b class="alpha50 bn small">(20)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-mumbai.htm" title="Jobs in Mumbai">Mumbai</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-madurai.htm" title="Jobs in Madurai">Madurai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-navi-mumbai.htm" title="Jobs in Navi Mumbai">Navi Mumbai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-hyderabad.htm" title="Jobs in Hyderabad">Hyderabad</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-thiruvallur.htm" title="Jobs in Thiruvallur">Thiruvallur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pondicherry.htm" title="Jobs in Pondicherry">Pondicherry</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-vellore.htm" title="Jobs in Vellore">Vellore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-pune.htm" title="Jobs in Pune">Pune</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-coimbatore.htm" title="Jobs in Coimbatore">Coimbatore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kanchipuram.htm" title="Jobs in Kanchipuram">Kanchipuram</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-virudhunagar.htm" title="Jobs in Virudhunagar">Virudhunagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-thiruvananthapuram.htm" title="Jobs in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px bdr mr7px mb7px spanlist dn"><a class="dif" href="jobs-in-kochi.htm" title="Jobs in Kochi">Kochi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Functional Area</h2>
				</div>
				<div style="padding:10px 18px;" class="ic">
									<p class="mb5px "><span class="fr">(18)</span><a href="jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<p class="mb5px "><span class="fr">(11)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(10)</span><a href="jobs-in-it-analyst-software-testing-fid.htm" title="IT Software - QA / Testing / Documentation Jobs">IT Software - QA / Testing / D...</a></p>
										<p class="mb5px "><span class="fr">(8)</span><a href="jobs-in-manufacturing-production-fid.htm" title="Manufacturing / Production / Quality Jobs">Manufacturing / Production / Q...</a></p>
										<p class="mb5px "><span class="fr">(7)</span><a href="jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development/telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="jobs-in-ites-bpo-kpo-lpo-customer-service-fid.htm" title="ITES / BPO / KPO / LPO / Customer Service Jobs">ITES / BPO / KPO / LPO / Custo...</a></p>
										<p class="mb5px "><span class="fr">(5)</span><a href="jobs-in-network-administration-security-fid.htm" title="IT Software - Network Administration, Security Jobs">IT Software - Network Administ...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-accounting-tax-fid.htm" title="Accounting / Auditing / Taxation Jobs">Accounting / Auditing / Taxati...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-hotel-restaurants-travel-airlines-fid.htm" title="Hotel / Restaurants /Travel / Airlines Jobs">Hotel / Restaurants /Travel / ...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-supply-chain-purchase-procurement-fid.htm" title="Supply Chain / Purchase / Procurement Jobs">Supply Chain / Purchase / Proc...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-cargo-freight-transportation-packaging-shipping-logistic-fid.htm" title="Cargo / Freight / Transportation / Packaging / Shipping/Logistic Jobs">Cargo / Freight / Transportati...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(3)</span><a href="jobs-in-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(2)</span><a href="jobs-in-education-teaching-training-counselling-fid.htm" title="Education / Teaching / Training / Counselling / Academic Jobs">Education / Teaching / Trainin...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(2)</span><a href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(2)</span><a href="jobs-in-health-care-pharmaceuticals-medical-fid.htm" title="Health Care / Pharmaceuticals / Medical Jobs">Health Care / Pharmaceuticals ...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-engineering-design-rd-quality-fid.htm" title="Engineering/ Engineering Design / R&D / Quality Jobs">Engineering/ Engineering Desig...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-fresh-graduate-fid.htm" title="Fresher / Trainee Jobs">Fresher / Trainee</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-front-office-reception-computer-operator-assistant-fid.htm" title="Front Office / Reception/Computer Operator/Assistant Jobs">Front Office / Reception/Compu...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-legal-services-fid.htm" title="Legal / Law Services / Judiciary Jobs">Legal / Law Services / Judicia...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px spanlist dn"><span class="fr">(1)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
									
				</div>
				</div>
				</div>
				
				</div>
				<!--MIDDLE ROW1 COL-1 ENDS-->
				
				<!--MIDDLE ROW1 ENDS--> 
				</div>
				<br><br>
				</div>
				</section>
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
					<script>
	$.ajax({
	  url: "https://www.placementindia.com/job_posting_view.php",
	  type: "POST",
	  dataType: 'html',
	  data: {job_view_id: 'NlRkakk1N3ZrR0xjaU92ZlI4dENlQT09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:77:"Job openings for bvt test engineer in bangalore | SVS Job Consulting Services";i:2;s:190:"Bvt Test Engineer Jobs,Bvt Test Engineer Jobs in Bangalore,Bvt Test Engineer Vacancy in Bangalore,Bvt Test Engineer jobs in India,IT Software - QA / Testing / Documentation jobs in Bangalore";i:3;s:285:"Apply for Bvt Test Engineer Jobs in Bangalore India - Bvt Test Engineer Vacancy  in IT Software - QA / Testing / Documentation field with 5 to 8 years Work Experience, Key Skills are BVT Test Engineering, BVT Testing, IT Software - QA / Testing / Documentation jobs in Bangalore  India";i:4;s:2631:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Bvt Test Engineer",
		  "baseSalary": " 7  Lac  50 Thousand  To  8  Lac  50 Thousand ",
		  "description": "Roles and Responsibilities
will Be Expected to Build Automated Bvt Functional Testcases and Tests Across the Solution.
create Automated Test to Test all Components in Isolation, Using Mocking, Stubbing and Service Virtualisation Tools like Mountebank.
provide Manual Testing for Bvt Scenarios Outside of Automation.
desired Skills and Experience
has Proven Experience Building Automated Functional, Bvt, Integration and Regression Tests
understand Functional, Bvt, Integration and Regression Testing in the Context of Unit, Integration and System Validation Testing Has Proven Automation Experience
significant Utilisation of Test Automation Frameworks such as Tosca, Selenium, Webdriverio, Jest, Enzyme, Mocha, Cucumber, Appium.
2+ Years’ Experience Using Tosca is Preferred
significant Utilisation of Programming Languages such as Javascript (including Frameworks like React or Node.js), Java, Python. Use of Techniques like Bdd and Tdd.
experience Testing with Apis with Graphql and Restful Styles of Communication.
experience in Clean Code Techniques, Coding Standards and Refactoring Code for Better Testability
ability Conduct Code Reviews and Peer Programming with Test Automation Community
non-functional Testing Experience Including Performance, Security, Accessibility, Internationalisation.
experience in the Application and Customisation of Continuous Integration/deployment Process and Tools such as Jenkins, Bamboo.
experience in Cloud Architecture, Development, and Testing in Aws, Google Cloud Platform or Azure.
experience with Docker, Kubernetes, Istio or other Containerisation Platforms.
consulting and Client Management Experience, Change Management, and Implementation Management
excellent Communication Skills
excellent Understanding of Functional Testing Principles
excellent Understanding of Integration Testing Principles
excellent Understanding of Regression Testing Principles",
		  "educationRequirements": "Other Bachelor Degree",
		  "experienceRequirements": "5 - 8 Years",
		  "industry": "IT Software - QA / Testing / Documentation",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Karnataka",
		      "addressRegion": "Bangalore"
		    }
		  },
		 "qualifications": "Other Bachelor Degree",
		     "skills": "BVT Test Engineering, BVT Testing"
		  }
		</script>
		";i:5;N;}