The 25-year-old succeeds Rohit Sharma as captain, with the 38-year-old having retired from Test cricket last month.
Gill, who has scored 1,893 runs in 32 Tests, will lead India in the five-Test tour of England starting on 20 June and includes the second Test at Edgbaston from 2 July.
Wicketkeeper Rishabh Pant has been named Gill's deputy.
Gill was one of the leading candidates to replace Rohit as Test skipper having served as Gujarat Titans captain in the IPL and led India in five T20 internationals.
"He's been around for two to three years in all formats. He can fall back on that experience."
India are starting a new World Test Championship cycle without both Rohit and his predecessor Virat Kohli, who followed Rohit in retiring from the format.
Sai Sudharsan hopes to make his Test debut and fellow batter Karun Nair could play in his first Test since 2017.
India Test squad: Shubman Gill (captain), Rishabh Pant (vice captain), Yashasvi Jaiswal, KL Rahul, Sai Sudharsan, Abhimanyu Easwaran, Karun Nair, Nitish Kumar Reddy, Ravindra Jadeja, Druv Jurel , Washington Sundar, Shardul Thakur, Jasprit Bumrah, Mohammed Siraj, Prasidh Krishna, Akash Deep, Arshdeep Singh, Kuldeep Yadav.