1.What is Visual Studio? What is the use of Visual Studio?
Created by Microsoft, Visual Studio is an integrated development environment that is used to develop computer programs for Windows. Visual studio can also be used for developing web sites, web applications, and web services. IT uses Microsoft software development platforms such as Windows API, Windows Forms, Windows Store, Windows Presentation Foundation, and Microsoft Silverlight, Including a code editor that support IntelliSense, Visual Studio is written in C++ and C# and offers an integrated debugger that works both as a source-level debugger and a machine level debugger.
2. What are the different activities we can do with Visual Studio?
Visual Studio supports various activities like developing, build, debug, test, deploy, version control, devops, improve performance, extend and data.
•Develop – Write and manage your code using the code editor.
•Build – Compile and build your source code.
•Debug – Investigate and fix problems with your code.
•Test – Organize your testing processes.
•Deploy – Share your apps using Web Deploy, InstallShield, and Continuous Integration, and more.
•Version Control – Share code using version control technologies such as Git and TFVC.
•DevOps – Continuously build and release your apps in the cloud, and implement Agile practices with VSTS.
•Improve Performance – Identify bottlenecks and optimize code performance by using diagnostic tools.
•Extend – Add your own functionality to the Visual Studio IDE to improve your development experience.
•Data – Create data apps that connect to any database or service, and anywhere—local or cloud.
3.What languages can you code in Visual Studio?
Visual Studio supports multiple programming languages like:
•C# – A modern object-oriented programming language with functional programming capabilities for building any application on the .NET platform.
•Visual Basic – A modern, easy to learn, the object-oriented programming language for the .NET platform, focused on easily creating Windows applications.
•C++ – A powerful and flexible programming language and development environment for creating applications for Windows, Linux, iOS, and Android.
•F# – A modern functional programming language with object-oriented capabilities for the .NET platform, focused on making Functional Programming easier for any task.
•JavaScript – A lightweight, cross-platform, scripting language often used to help make web pages more interactive.
•TypeScript – A superset of JavaScript that compiles to plain JavaScript and enables you to create more scalable code.
•Python – A dynamic object-oriented, high-level programming language often used for rapid application development.
•R – An extensible programming language typically used for statistical computing and graphics.
4.What is Visual Studio IDE?
Visual Studio IDE is a full-featured development platform for multiple operating systems as well as the web and the cloud. It allows users to smoothly navigate the interface so they can write their code speedily and accurately. With Visual Studio IDE, developers also have access to a host of debugging tools. These assist them in profiling bugs and diagnosing them simply. This way, they can deploy their applications confidently, knowing that they have done away with anything that could cause performance errors.
Visual Studio IDE also serves as a testing platform as well. This is where developers can simulate how their applications are going to run in their target environments and to ensure they do so smoothly once they are deployed.
5.What are the benefits of Visual Studio IDE?
•Accurate Coding: With Visual Studio IDE, users are provided live coding assistance regardless of the programming language they are utilizing. The platform’s built-in IntelliSense offers hints and descriptions of APIs and auto-completes lines for better speed. Additionally, Visual Studio IDE ensures that developers do not lose their last modification place as they explore the rest of their code.
•Quick Debugging: Finding and diagnosing bugs can be a challenge, but Visual Studio IDE has a host of tools that make it easier. The platform has debugging support for all included languages. The process can also be done locally, remotely, and in the middle of production. This lets developers deploy apps on the desktop or emulators in mobile devices and other debugging methods.
•Rigorous Testing: Visual Studio IDE is equipped with an app testing platform that enables developers to make certain they are ready to deploy high-quality products. They can do this in their preferred language and test framework while doing so with limited effort. This way, they can channel more of their energies on other phases of development.
•Team Collaboration: The makers of Visual Studio IDE understand that more sets of eyes are better than one. That is why the platform has collaborative capabilities that increase a team’s productivity. These tools are tightly integrated with the development lifecycle. Further, Visual Studio IDE performs well in collaborative mode regardless of the preferred platforms of each member.
•Customization Options: Visual Studio IDE offers customization options to every user. They can extend the functionalities of the platform through extensions and add-ons available from the Visual Studio Marketplace. Developers are even able to publish their own extensions.
6.Which three tests are automation tools in Visual Studio?
There are three automated testing tools namely Selenium, QTP (Quality Test Professional) and Coded UI Test (CUIT) with Visual Studio.
7.What is Selenium and why is it used?
Selenium is the most popularly used freeware and open source automation tool. The benefits of Selenium for Test Automation are immense. Importantly, it enables record and playback for testing web applications and can run multiple scripts across various browsers.
8.What is QTP used for?
Micro Focus Unified Functional Testing (UFT), formerly known as QuickTest Professional (QTP), is software that provides functional and regression test automation for software applications and environments.
9.What is the QTP Testing Process?
QTP is an automated functional Testing tool that helps testers to execute automated tests in order to identify any errors, defects or gaps in contrary to the expected results of the application under test.
10.What is QTP code?
When a tester launches QTP and performs some operations, QTP generates lines of code for each step performed by the tester. Although It is mainly used for UI based test case automation, it can also be used to automate some Non-UI based test cases such as database testing, file system operations or web service testing.
11.What is the important difference between Selenium and QTP?
QTP comes with a built-in object repository whereas Selenium has no built-in object repository. In QTP, data-driven testing is easier as it has built-in global and local tables whereas in Selenium we need to rely on programming language capabilities.
12.What is a Coded UI Test?
Coded UI tests (CUITs) drive your application through its user interface (UI). These tests include functional testing of the UI controls. They let you verify that the whole application, including its user interface, is functioning correctly. They are also frequently used to automate an existing manual test.
13.Is code UI open source?
Coded UI from Microsoft and open source White from TestStack are two popular choices for developers starting with automating UI tests for WPF applications. Coded UI is shipped with Visual Studio starting from version 2010.
14. What is the relation between Coded UI Test and Selenium?
Selenium IDE supports XML data sources. Coded UI Test supports any data source supported by.NET framework, which can come in the form of a. CSV file, XML file. It can also support any other data source like SQL Server table, Access table etc.
15. What are the New features available in Visual Studio 2015 – 2017?
•Redefined fundamentals: A new setup experience means that you can install more quickly and install what you want when you need it.
•Performance and productivity: More focused on new and modern mobile, cloud, and desktop development capabilities.
•Cloud app development with Azure: A built-in suite of Azure tools enables you to easily create cloud-first apps powered by Microsoft Azure.
•Windows app development: Use the UWP templates in Visual Studio 2017 to create a single project for all Windows 10 devices – PC, tablet, phone, Xbox, HoloLens, Surface Hub, and more.
•Mobile app development: In Visual Studio 2017, you can innovate and get results fast with Xamarin, which unifies your multi-platform mobile requirements by using one core codebase and set of skills.
•Cross-platform development: Seamlessly deliver software to any targeted platform. Extend DevOps processes to SQL Server through Redgate Data Tools and safely automate database deployments from Visual Studio.
•Games development: With Visual Studio Tools for Unity (VSTU), you can use Visual Studio to write game and editor scripts in C# and then use its powerful debugger to find and fix errors.
•AI development: With Visual Studio Tools for AI (new in 15.5), you can use the productivity features of Visual Studio to accelerate AI innovation. Build, test, and deploy Deep Learning / AI solutions that seamlessly integrate with Azure Machine Learning.
16. What is a Solution Explorer in Visual Studio?
Solution Explorer shows you a graphical representation of the hierarchy of files and folders in your project, solution, or code folder. You can browse the hierarchy and navigate to a file in Solution Explorer.
17.What is Refactoring?
Refactoring is the process of improving your code after it has been written. Refactoring changes the internal structure of the code without changing its behavior.
18. What are the different Refactoring options in Visual Studio?
The different refactoring option in visual studio are:
•Add parameter (from CallSite)
•Generate overrides
•Add named argument
•Add null-check for parameters
•Insert digit-separators into literals
•Change base for numeric literals (for example, hex to binary)
•Convert if-to-switch
•Remove unused variable
19. How do you interact with Git in Visual Studio?
When you are working with a project in Visual Studio, you can set up and quickly commit and publish your code to a Git service. You can also manage your Git repositories by using menu clicks from buttons in the bottom right-hand corner of the IDE.
20. What is the advantage of creating a project in Visual Studio for a Python application?
Python applications are typically defined using only folders and files, but this structure can become complex as applications become larger and perhaps involve auto-generated files, JavaScript for web applications, and so on. A Visual Studio project helps manage this complexity.
The project (a .pyproj file) identifies all the source and content files associated with your project, contains build information for each file, maintains the information to integrate with source-control systems, and helps you organize your application into logical components.
21. Can you explain the browser link?
Browser Link is a new feature in Visual Studio 2013 that creates a communication channel between the development environment and one or more web browsers. You can use Browser Link to refresh your web application in several browsers at once, which is useful for cross-browser testing.
22. Can you explain about Namespace?
Namespaces are logical groupings of names used within a program. There may be multiple namespaces in a single application code, grouped based on the identifiers’ use. The name of any given identifier must appear only once in its namespace.
23. Explain about Assembly and Manifest?
An assembly is a collection of one or more files and one of them (DLL or EXE) contains a special metadata called Assembly Manifest. The manifest is stored as binary data and contains details like versioning requirements for the assembly, the author, security permissions, and list of files forming the assembly.
An assembly is created whenever a DLL is built. The manifest can be viewed programmatically by making use of classes from the System.Reflection namespace. The tool Intermediate Language Disassembler (ILDASM) can be used for this purpose. It can be launched from the command prompt or via Start> Run.
24. Do you know about DLL Hell? Explain it?
DLL hell is the problem that occurs when an installation of a newer application might break or hinder other applications as newer DLLs are copied into the system and the older applications do not support or are not compatible with them. .NET overcomes this problem by supporting multiple versions of an assembly at any given time. This is also called side-by-side component versioning.
25. What is CLR?
Common Language Runtime (CLR) is a run-time environment that manages the execution of .NET code and provides services like memory management, debugging, security, etc. The CLR is also known as Virtual Execution System (VES).
26. What is Architecture Explorer in Visual Studio?
use Architecture Explorer in Visual Studio to find specific code.
27. How to detect Clone Code in Visual Studio?
Code clones are separate fragments of code that are very similar. They are a common phenomenon in an application that has been under development for some time. Clones make it hard to change your application because you have to find and update more than one fragment.
Visual Studio Enterprise can help you find code clones so that you can refactor them.
•You can either find the clones of a specific fragment, or find all clones in your solution. In addition to discovering direct copies, the clone analysis tool can find fragments which differ in the names of variables and parameters, and in which some statements have been rearranged.
•The code clone analyser searches for duplicate code in Visual C# and Visual Basic projects throughout your Visual Studio solution.
28. How to generate Sequence diagrams in Visual Studio?
To visualize how the code implements a particular method, create a sequence diagram from that method in Visual Studio Ultimate. The sequence diagram shows the interaction between objects as a series of lifelines and messages. Lifelines represent instances of objects, and messages represent method calls between those objects. You can generate sequence diagrams from Visual C# .NET or Visual Basic .NET code, but not from projects that share code across multiple apps.
29.What are the Shortcut Keys for debugging in Visual Studio?
Visual Studio Debugging Shortcut Keys:
•Ctrl-Alt-V: A Displays the Auto window to view the values of variables currently in the scope of the current line of execution within the current procedure
•Ctrl-Alt-Break: Temporarily stops the execution of all processes in a debugging session. Available only in run mode
•Ctrl-Alt-B: Displays the Breakpoints dialog, where you can add and modify breakpoints
•Ctrl-Alt-C: Displays the Call Stack window to display a list of all active procedures or stack frames for the current thread of execution. Available only in break mode
•Ctrl-Shift-F9: Clears all of the breakpoints in the project
•Ctrl-Alt-D: Displays the Disassembly window.
30. What is the important difference between UFT and QTP?
UFT implies Unified Functional Testing. A new tool has been developed that integrates the two most powerful testing products on a common platform of IDE. Hence by this tool, we have a powerful testing framework for API testing and GUI based applications.